建構函式 匿名函式 與普通函式的區別 以及啥是閉包
阿新 • • 發佈:2018-12-29
//普通函式 function person2 (name,age) { this.name=name; this.age=age; this.sayName=function () { console.log(this.name); } console.log(this.age); } person2("lucy","23"); //this 指向window window.sayName(); //lucy // 建構函式 function Person (name,age) { //一般都是首字母大寫 this.name=name; this.age=age; this.sayName=function (){ console.log(this.name); } } var personw =new Person("make","18"); //new 一個物件 this指向person personw.sayName(); //make //匿名函式 (function(){ console.log("匿名函式自我呼叫"); })(); //呼叫匿名函式 // 將匿名函式賦值給變數 var cat = function () { console.log("賦值的匿名函式"); } cat(); // 閉包可以讓你有權訪問另一個作用域內函式的變數 function box () { return function(){ return 'lee'; } } console.log(box()()); //lee