-
javascript可以用!或+或()放在function前,为函数表达式写法,防止function前置形成函数声明,函数声明后加()会报语法错误查看全部
-
全局、函数、eval作用域查看全部
-
js没有块级作用域的说法,所以图中的两个定义方式最后产生的结果是一样的,都是全局的查看全部
-
闭包优缺点查看全部
-
闭包概念(维基百科)查看全部
-
常见错误之循环闭包:查看全部
-
闭包的理解: 闭包就是能够读取其他函数内部变量的函数 可以把闭包简单理解成“定义在一个函数内部的函数”。 所以,在本质上,闭包就是将函数内部和函数外部连接起来的一座桥梁。查看全部
-
use strict的区别总结查看全部
-
use strict下使用arguments[0]修改参数的影响。查看全部
-
switch,可以有以下写法查看全部
-
for(pro in obj)遍历对象属性,特点如图查看全部
-
判断this的指向(1-4优先级逐级递减,1优先级最高,4优先级最低): 1、函数被new调用,this指向由new新构造出来的这个对象; 2、函数通过call()、apply()、bind()调用,this指向被绑定的对象; 3、函数作为方法被调用,this指向这个对象(即常说的对象上下文); 4、默认(非严格模式)情况下,this指向window, 严格模式下,this指向undefined。查看全部
-
一般使用typeof,当需要对一些特殊的类型如:null、array等就需要借用其他的检测函数查看全部
-
全局对象中的this指的是window对象,但是在严格模式下时undefined. 在对象中对象方法中的this值得是当前的对象,或者把函数作为对象的方法是用this都是指当前对象. 对象原型链上的方法中的this也指的是当前对象。 对象中的get/set方法中的this也指的是当前对象。 构造器中的this指的是构造器函数prototype中的原型,当new一个对象时就会将构造器的prototype中的this赋值个当前对象。 call():扁平的传参, apply():以数组的方式传参; bind对象绑定之后即使有新的对象,仍然会按原来的绑定走。查看全部
-
函数声明 VS. 函数表达式 VS. 函数构造器 函数声明不允许立即调用,因为它会前置 函数表达式不可以通过函数的名字去调用查看全部
举报
0/150
提交
取消