簡單js編程,瞭解對象(object)及this的使用方法

var student1 ={
    name:'tom',
    age:18,
    sayNanme:function () {
        console.log('my name is'+this.name)
      }
}

簡單聲明一個對象(object)爲student1,你可以通過student1.name或者student1[name]的形式訪問它的name或者age屬性。

sayName是它的一個方法,本質就是一個函數,可以通過student1.sayName()的形式調用。這會在瀏覽器的console(控制檯)裏面,以log的形式(也有warn等其他用法)輸出一行字符串,內容爲“my name is tom”。

this.name直接寫成name不行嗎?

實踐證明是不行的,二者的區別在於this.name明確了:應在object內查找名爲name變量。如果直接寫成name,解釋器會認爲這是一個全局變量,會在object外查找,由於在全局範圍沒有聲明name,自然也就無法找到。如果在全局範圍內聲明瞭name=‘van’,代碼還是會正常輸出的。

this是啥?如果某個對象使用this.的形式訪問自己的屬性或方法,this就是這個對象本身。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章