首頁 > web前端 > js教程 > ES6 中箭頭函數可以建立自己的 Arguments 物件嗎?

ES6 中箭頭函數可以建立自己的 Arguments 物件嗎?

Susan Sarandon
發布: 2024-10-18 15:54:03
原創
523 人瀏覽過

Can Arrow Functions Create Their Own Arguments Object in ES6?

ES6 箭頭函數:參數用法說明

關於ES6 箭頭函數中參數的使用,由於實現之間的衝突而引起了混亂主要瀏覽器和Babel。本文旨在澄清官方對此事的立場。

行為異常

在箭頭函數中,參數應從父作用域繼承其值。然而,Chrome、Firefox 和 Node 等瀏覽器違反了這一原則,允許箭頭函數創建自己的參數物件。

官方文件

官方ECMA-262 規範(ES6) 明確指出「指定的語句、箭頭函數在其範圍內沒有自己的參數綁定;調用它們時不會建立任何參數物件。

瀏覽器實作

儘管有官方規範,Chrome、Firefox 和 Node 仍然選擇了無視這條規則,而 Babel 則遵守它。這會導致以下差異:

  • 瀏覽器:參數在箭頭函數中可用,源自於自己的範圍。
  • Babel:參數在箭頭函數中不可用,導致「參數未定義」錯誤。

正確用法

為了避免混淆並確保不同環境之間的兼容性,遵循官方規範至關重要。箭頭函數不應該有自己的參數對象,並且對其中參數的任何引用都應該引用父作用域。

以上是ES6 中箭頭函數可以建立自己的 Arguments 物件嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板