Three locations1 ) 在物件中
var foo = { name:"David", printname: function(){ console.log(this.name); } } foo.printname(); ==>output:David 2 ) 使用建構子建立 function MyClass(name){ this.name = name; } var foo = new MyClass("David"); console.log(foo.name); ==>output:David //若沒有在嚴格模式下,一般this會是全域 3 ) 一般函式中 "use strict" var foo = { name:"David"; printname:function(){ var that = this; //需要有人來接 return function(){ console.log(that.name); } } } var out=foo.printname() out(); ==>output:David //在JS中,不是看你this寫在那個函式中,而是看你用哪個執行(去決定this代表是誰)
0 評論
About Strict嚴格模式 "use strict"
1 ) 可以避免打錯字 ex : var fatpig = 1; faptig = 2 console.log(fatpig); ==>會跳出faptig沒有宣告的error 2 ) 避免未來版本的保留字被當成變數 ex : var let = 1; console.log(let); ==> Unexpected strict mode reserved word 3 ) 不能刪除已宣告的變數或函式 ex : var one = 1; delete one; ==> Delete of an unqualified identifier in strict mode 4 ) 不能使用eval ex : eval("var one = 1"); 一般來說console得出來,但在嚴格模式會不認得 Change HTML Content
> 在id為XXX的物件裡嵌入Html內容Hello DY document.getElementById("XXX").innerHTML = 'Hello DY'; > 填入內容以雙/單引號括弧均可 Data Displaying
Function
} Object
|
Author一位平凡大學生,熱愛手語、擔任志工、工作努力賺錢、科技新知。 |