-
3种方式对比查看全部
-
();表示立即调用执行查看全部
-
函数声明前置查看全部
-
函数声明和函数表达式查看全部
-
判断this的指向(1-4优先级逐级递减,1优先级最高,4优先级最低): 1、函数被new调用,this指向由new新构造出来的这个对象; 2、函数通过call()、apply()、bind()调用,this指向被绑定的对象; 3、函数作为方法被调用,this指向这个对象(即常说的对象上下文); 4、默认(非严格模式)情况下,this指向window, 严格模式下,this指向undefined。查看全部
-
已完成查看全部
-
严格模式 严格模式是一种特殊的执行模式 它修复了部分语言上的不足 提供更强的错误检查,并增强安全性. function(){ "use strict";//那么函数里为严格模式 } "use strict"//那么整个文件都是严格模式 function(){ } 严格模式下是不予许使用with,不允许未声明的变量被赋值 'use strict'; 不允许使用with 所有变量必须声明 eval中的代码不能创建eval所在作用域下的变量、函数,而是一个单独的作用域,并在eval返回时丢弃。 arguments变为静态副本 删除configurable=false时报错 禁止八进制字面量 eval arguments变为关键字 一般函数调用时,this指向null,而不是全局对象 若使用apply/call,当传入null或undefined时,this将指向null或undefined,而不是全局对象。 试图修改只读属性时,会返回typeError arguments.caller/callee被禁用查看全部
-
try{ throw "test" }catch(ex){ console.log(ex) }finally{ console.log("finally") } try{ try{ throw new Error("test"); }catch(ex){ console.log(ex) }finally{ console.log("finally") } } catch(ex){ console.error("outer",ex.message);查看全部
-
block语句 没有块级作用域{语句1;语句2;} function test(){ var a=b=1;//这样定义的话,a为局部变量,b为全局变量 } test() console.log(typeof a);//undefined, a为局部变量 console.log(typeof b);//number, b为全局变量 function test(){ var a=1,b=2;//这样定义的话,a,b为局部变量 } test(); console.log(typeof a);//undefined, a为局部变量 console.log(typeof b);//undefined, b为局部变量查看全部
-
闭包常见的错误查看全部
-
js类型检测方法小结查看全部
-
一边输字符串一边输入数字,会尝试将字符串转换为数字再进行比较查看全部
-
所有的运算符查看全部
-
原始表达式查看全部
-
qqqq查看全部
举报
0/150
提交
取消