Властивість-аксесор Array[@@species]
повертає конструктор Array
.
Синтаксис
Array[Symbol.species]
Значення, що повертається
Конструктор Array
.
Опис
Властивість-аксесор species
повертає конструктор за замовчуванням для об'єктів Array
. Конструктори підкласів можуть його заміщувати, змінюючи присвоєння конструктора.
Приклади
Species у звичайних об'єктах
Властивість species
повертає функцію-конструктор за замовчуванням, для об'єктів Array
це конструктор Array
:
Array[Symbol.species]; // функція Array()
Species у похідних об'єктах
У похідному об'єкті колекцій (наприклад, у вашому користувацькому масиві MyArray
), species
для MyArray
поверне конструктор MyArray
. Однак, ви, можливо, захочете переписати цю поведінку, щоб повертати батьківські об'єкти Array
у методах свого похідного класу:
class MyArray extends Array {
// Переписати Symbol.species у MyArray на батьківський конструктор Array
static get [Symbol.species]() { return Array; }
}
Специфікації
Специфікація |
---|
ECMAScript (ECMA-262) The definition of 'get Array [ @@species ]' in that specification. |
Сумісність з веб-переглядачами
BCD tables only load in the browser
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.