闭包高级
类似于作用域链,在函数返回一个函数的时候,会把外面的函数的作用域链[[socped]]放到全局上
function test(){
let a = 0
return funtion test2(){
console,log(a)
}
}
let fn = test()
fn() // 0
对像
let obj = {
name:'Tc',
age:25,
teach:function (){
console.log('i am teaching Js')
},
dirnk:function () {
consloe.log('dirnk water')
}
}
obj.eat = function (){
console.log('eat something')
}
obj.sex = 'male'
// 通过 Object.key = value 赋值
//删除
delete obj.sex
delete obj.teach() // 这个执行了不会删除,还保存在obj中
delete obj.teach // 这样才能删除
构造函数
function Fn (){
this.name = 'fn name'
this.sex = 'male'
this.dirnk = function (){
console.log('i am drinking')
}
}
// 不执行不存在 只是在GO 声明一个Fn
let getFn = new Fn()
通过new 实例化 成一个对象