-
。。。。。查看全部
-
js 里没有块级作用域。查看全部
-
类型检测查看全部
-
类型检测小结查看全部
-
typeof查看全部
-
不同类型比较的时候的隐式转换查看全部
-
严格等于,对比类型+值,空对象不等于空对象。查看全部
-
a= =b的比较查看全部
-
利用+ - 符号巧用数据类型查看全部
-
数据类型,原始类型+对象类型查看全部
-
弱类型语言查看全部
-
变量和函数前置处理查看全部
-
再执行时,变量会覆盖函数 函数表达式不会影响VO查看全部
-
为什么函数声明会被提前,因为函数在变量初始化阶段 区域里面的声明已经被放过AO里面 var c= 10 ;只会在AO中放过变量申明 所以在 AO中 c:undefined 变量申明的冲突 是忽略,函数申明的冲突是覆盖 //冲突 变量名称相等 函数表达式不会影响vo !!! var e = function _e(){}; 在AO中不存在 _e:查看全部
-
这种叫自执行函数表达式 在这种情况下,解析器在解析function关键字的时候,会将相应的代码解析成function表达式,而不是function声明。 // 下面2个括弧()都会立即执行 (function () { /* code */ } ()); // 推荐使用这个 (function () { /* code */ })(); // 但是这个也是可以用的 // 由于括弧()和JS的&&,异或,逗号等操作符是在函数表达式和函数声明上消除歧义的 // 所以一旦解析器知道其中一个已经是表达式了,其它的也都默认为表达式了 var i = function () { return 10; } (); true && function () { /* code */ } (); 0, function () { /* code */ } (); // 如果你不在意返回值,或者不怕难以阅读 // 你甚至可以在function前面加一元操作符号 !function () { /* code */ } (); ~function () { /* code */ } (); -function () { /* code */ } (); +function () { /* code */ } ();查看全部
举报
0/150
提交
取消