点此查看完整干净版本: 利用运算符优先级实现ifelse表达式
中华图网
->
网页设计交流
->
利用运算符优先级实现ifelse表达式
登录
->
注册
->
回复主题
->
发表主题
越兔
2008-08-20 09:57
转于石头君BLOG:
http://www.v-ec.com/dh20156/article.asp?id=131
然后继续讨论到更深层次,关于作用域的区别:
Code:
<script type="text/javascript">
var z = 2;
//IE下output 2,FF下output ff
try{x()}catch(e){alert('ff')}
with ({z:1}){
var y = function x(){alert(z)};
//{z:1}没有y属性,y将变成全局变量
//但是这里,y的[[scope]]却是{z:1}
//x在IE下已经被预定义,[[scope]]是window,而在FF下则不可以直接访问到x,y.__proto__成了x的引用,y.__proto__的[[scope]]也是window
}
y();//output 1
try{x()}catch(e){y.__proto__()}//output 2
</script>
[可以先修改代码再运行]
附加阅读:
= function () {}();
解释器会去执行函数,赋予=前面返回值
(function () {}())
解释器会去执行函数,赋予括号返回值
(function () {})()
解释器会返回function给括号,然后后面的括号再执行,然后再返回。
查看完整干净版本: 利用运算符优先级实现ifelse表达式
Powered by
Cntuw.com
Time 0.623172 second(s),query:3 Gzip enabled
You can
|