麻豆黑色丝袜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
主站蜘蛛池模板: 韩国v欧美v亚洲v日本v| 日韩欧国产精品一区综合无码 | 免费特级黄毛片| 中文字幕ヘンリー冢本全集| 男人天堂官方网站| 美女毛片在线看| 新木乃伊电影免费观看完整版| 国产精品一级二级三级 | 午夜体验试看120秒| 一区二区三区视频| 国产无遮挡又黄又爽在线视频| 三上悠亚日韩精品一区在线| 最近高清日本免费| 午夜精品在线| 欧美夫妇交换俱乐部在线观看| 欧美日韩电影在线观看| 亚洲精品aaa揭晓| 日韩手机视频| 久久久久无码国产精品一区| 亚洲精品国产精品乱码不卞| 中国美女一级毛片| 人人爽天天碰天天躁夜夜躁| 青青草国产精品视频| 波多野结衣电影免费在线观看| 717午夜伦伦电影理论片| 巨大欧美黑人xxxxbbbb| 欧美四虎| 午夜免费理论片a级| 91久久麻豆| 日本三级中文字版电影| 天天躁夜夜躁很很躁| 性生活片免费看| 真实乱l仑全部视频| 久久精品无码一区二区日韩av| 娃娃脸中文字幕1080p| 国产三级影院| 久久夜色精品国产亚洲| 免费中文字幕不卡视频| 步兵精品手机在线观看| 亚洲欧洲综合在线| 波多野结衣厨房被强电影|