iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 26
1
自我挑戰組

JavaScript技術手冊閱讀筆記系列 第 26

第26天:this(1)

JavaScript的物件在本質上,像是特性的集合體,是由特性所組成的,而函式是一級值,所以可以將函式物件指定給其他函式當特性來用。

function sayHello(people){
    console.log(`你好,我是${people.name},今年${people.age}歲`)
};

let p1 ={
        name:'長庚',
        age:18,
        say:sayHello
    };
p1.say(p1);

https://ithelp.ithome.com.tw/upload/images/20201011/20120420cPbddlD9jK.png

使用this

我們的name跟age都是p1提供的,所以其實可以用this來替代people這個參數如下:

function sayHello(){
    console.log(`你好,我是${this.name},今年${this.age}歲`)
};

let p1 ={
        name:'長庚',
        age:18,
        say:sayHello
    };
let p2 ={
        name:'還沒下凡的女朋友',
        age:18,
        say:sayHello
    };
p1.say();
p2.say();

https://ithelp.ithome.com.tw/upload/images/20201012/20120420TIDxEYn3fa.png

每個涵式都有this參考,這個this是參考到哪一個物件,依誰呼叫這個函式來決定。

先寫到這邊,晚安><


上一篇
第25天:Generator產生器函式
下一篇
第27天:this(2)
系列文
JavaScript技術手冊閱讀筆記30

尚未有邦友留言

立即登入留言