麻豆黑色丝袜jk制服福利网站-麻豆精品传媒视频观看-麻豆精品传媒一二三区在线视频-麻豆精选传媒4区2021-在线视频99-在线视频a

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > 什么是箭頭函數(shù)?箭頭函數(shù)中this關(guān)鍵字的用法

什么是箭頭函數(shù)?箭頭函數(shù)中this關(guān)鍵字的用法

來源:千鋒教育
發(fā)布人:syq
時(shí)間: 2023-05-26 17:25:00 1685093100

  箭頭函數(shù)是 ES6 中新增的一種函數(shù)寫法,它的語法比傳統(tǒng)的函數(shù)更簡潔,主要使用箭頭(=>)來定義函數(shù)。

什么是箭頭函數(shù)

  一個(gè)基本的箭頭函數(shù)的形式為:

(param1, param2, …, paramN) => { statements; }

   其中:

  - `param1, param2, …, paramN` 是函數(shù)的參數(shù)。

  - `statements` 是函數(shù)的執(zhí)行代碼塊。

  與傳統(tǒng)函數(shù)不同的是,箭頭函數(shù)沒有自己的this關(guān)鍵字,它繼承了父級作用域的this值。這意味著,在箭頭函數(shù)中使用this關(guān)鍵字,它的作用域是外層的函數(shù)作用域,而不是箭頭函數(shù)自身的作用域。

  例如:

let obj = {
name: 'Jack',
sayHi: function() {
console.log(`Hi, my name is ${this.name}.`);
},
sayHiArrow: () => {
console.log(`Hi, my name is ${this.name}.`);
}
}

obj.sayHi(); // 輸出:Hi, my name is Jack.
obj.sayHiArrow(); // 輸出:Hi, my name is undefined.

   在上面的例子中,`obj.sayHi` 是一個(gè)傳統(tǒng)函數(shù),它的作用域是 `obj`,所以在打印時(shí)輸出了正確的結(jié)果。而`obj.sayHiArrow` 是一個(gè)箭頭函數(shù),它的作用域是定義它的作用域,即全局作用域。所以在打印時(shí),`this.name` 取不到值,輸出了 undefined。

  需要注意的是,當(dāng)箭頭函數(shù)作為對象方法時(shí),this指向仍可被修改。例如:

let obj = {
name: 'Jack',
sayHiArrow: () => {
console.log(`Hi, my name is ${this.name}.`);
},
sayHi: function() {
console.log(`Hi, my name is ${this.name}.`);
},
sayHiWithCall: function() {
console.log(`Hi, my name is ${this.name}.`);
}
}

obj.sayHiArrow(); // 輸出:Hi, my name is undefined.
obj.sayHi(); // 輸出:Hi, my name is Jack.
obj.sayHiWithCall.call({name: 'Tom'}); // 輸出:Hi, my name is Tom.

   在上述例子中,我們可以通過將傳統(tǒng)函數(shù)`sayHi`的普通調(diào)用方式修改為使用 `call` 方法傳入一個(gè)新的上下文來改變this指向,而對于箭頭函數(shù)`sayHiArrow`,無論如何都指向全局作用域。

tags:
聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
python字符串截取?

在Python中,字符串是一種非常常見的數(shù)據(jù)類型,它可以用來表示文本、數(shù)字、符號等內(nèi)容。在實(shí)際應(yīng)用中,我們經(jīng)常需要對字符串進(jìn)行截取,以便獲取...詳情>>

2023-11-02 17:56:27
Python socket C/S結(jié)構(gòu)的聊天室應(yīng)用實(shí)現(xiàn)?

隨著互聯(lián)網(wǎng)的發(fā)展,聊天室應(yīng)用成為人們?nèi)粘I钪惺殖R姷囊环N社交方式。Python語言的Socket模塊是實(shí)現(xiàn)網(wǎng)絡(luò)通信的重要工具,可以輕松地實(shí)現(xiàn)C/...詳情>>

2023-11-02 17:53:38
用while求1到100的奇數(shù)和?

在計(jì)算機(jī)編程中,循環(huán)語句是非常重要的一部分。而while語句是其中最基本也是最常用的一種。它的作用是在滿足一定條件的情況下,重復(fù)執(zhí)行一段代...詳情>>

2023-11-02 17:50:57
python創(chuàng)建一個(gè)集合?

在Python中,集合是一種無序且不重復(fù)的數(shù)據(jù)類型,可以用于存儲(chǔ)一組元素。創(chuàng)建一個(gè)集合非常簡單,只需要使用大括號{}或者set()函數(shù)即可。使用大...詳情>>

2023-11-02 17:34:02
linux改文件屬主命令?

Linux文件相關(guān)命令1、命令一:cat cat命令應(yīng)該是在Linux中查看文件內(nèi)容最常見的命令了。使用cat命令會(huì)打印指定文件的所有內(nèi)容到標(biāo)準(zhǔn)輸出上,比...詳情>>

2023-10-31 19:58:15
主站蜘蛛池模板: 国内精品久久久久影院蜜芽| 波多野结衣与黑人| 五月婷婷电影| 亚洲免费视频观看| 美女扒开大腿让男人桶| 再深点灬舒服了灬太大了乡村 | va亚洲va日韩不卡在线观看| 三级黄色免费片| 日本在线免费看片| 天下第一社区视频welcome| 下面一进一出好爽视频| 欧美一级片免费在线观看| 国产国产精品人在线视| 国产美女免费观看| 扒开腿狂躁女人爽出白浆| 欧美金发大战黑人video| 精品久久久久国产免费| 樱桃黄高清完整版在线观看| 欧美一级亚洲一级| 波多野结衣办公室33分钟| 明星造梦一区二区| 深夜影院一级毛片| 国产自在线观看| 精品无人区麻豆乱码1区2区| a级毛片免费完整视频| 在线观看免费视频一区| 国产又爽又黄又舒服又刺激视频| 一二三四视频社区在线| 三级黄色录像片| 玖玖色资源站| 国产综合色在线视频区| 亚洲欧美国产精品第1页| 停不了的爱在线观看高清| 欧美一区二区三区久久综合| 亚洲电影a| 欧美精品国产综合久久| 欧美国产综合| 动漫人物差差差免费动漫在线观看 | 在车子颠簸中进了老师的身体| 女人扒开| 免费的生活片|