首頁 > web前端 > js教程 > 主體

ES6 箭頭函數中的 Arguments 物件何時可用?

Susan Sarandon
發布: 2024-10-18 15:58:02
原創
605 人瀏覽過

When is the Arguments Object Available in ES6 Arrow Functions?

ES6 箭頭函數中的 Arguments 物件:官方文件

箭頭函數以其簡潔的語法迅速吸引了開發人員的注意。然而,引起疑問的一個方面是其中參數物件的可用性。

根據 JavaScript 標準化管理機構 TC39 的官方文檔,箭頭函數不會建立自己的參數物件。與常規函數不同,箭頭函數從其父作用域繼承參數物件。

此行為在以下範例中很明顯,其中使用三個參數呼叫箭頭函數:

<code class="js">(() => console.log(arguments))(1, 2, 3);</code>
登入後複製

在環境中與Chrome、Firefox 和Node.js 一樣,此程式碼將記錄「1,2,3」。然而,Babel 和其他捆綁器會引發錯誤,表示參數未定義。

出現這種差異是因為某些環境允許箭頭函數存取其父作用域的參數對象,而其他環境則實現了 ES6 的嚴格解釋規範,禁止箭頭函數擁有自己的參數對象。

綜上所述,TC39(ES6 規範)的官方文件明確指出箭頭函數不擁有自己的參數物件。在箭頭函數可以存取父作用域參數的某些環境中觀察到的行為是非標準的,可能會導致意外結果。

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

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