this 的补充。
function f() {
console.log(this.n)
}
var Obj = {
n:1,
f:f
}
// 当前作用域下是没有 this.n 这个值的
console.log(this.n) // undefined
// 所以在当前作用域下执行 f 函数,结果等于 undefined
f() // undefined
伪装执行环境。
function f(a, b) {
console.log(this.n + a + b)
}
var Obj = {
n:1,
f:f
}
// 把 f 函数执行的作用域修改成 Obj,那么就能读取到 Obj 内部 n 的值
f.call(Obj, 1, 2) // 2
// 效果同于 call,区别在于函数的传参
f.apply(Obj, [1, 2]) // 2
JavaScript 数据类型
JavaScript 数字
JavaScript 字符串
JavaScript 数组
JavaScript 对象
JavaScript Map
JavaScript Set
JavaScript null
JavaScript undefined
JavaScript 类型检测
JavaScript 包装对象
JavaScript 函数
JavaScript 参数
JavaScript 匿名函数
JavaScript 箭头函数
JavaScript 递归
JavaScript 闭包
JavaScript 生成器
JavaScript 异步
JavaScript setTimeout
JavaScript setInterval
JavaScript 回调
JavaScript Promise
JavaScript async await