JavaScript метод getOwnPropertySymbols()
JavaScript ObjectОпределение и применение
JavaScript метод getOwnPropertySymbols() возвращает массив, состоящий из всех символьных (Symbol) свойств переданного объекта (массив символов конкретного объекта).
Обращаю Ваше внимание, что если Вам необходимо получить массив, состоящий из всех имен собственных (неунаследованных) свойств и методов объекта (включая неперечислимые свойства и методы), то вы можете воспользоваться методом getOwnPropertyNames(). Этот метод не добавляет в массив символьные свойства.
Поддержка браузерами
Метод | Chrome | Firefox | Opera | Safari | IExplorer | Edge |
---|---|---|---|---|---|---|
getOwnPropertySymbols() | 38.0 | 36.0 | 25.0 | 9.0 | Нет | Да |
JavaScript синтаксис:
Object.getOwnPropertySymbols( obj );
Версия JavaScript
ECMAScript 2015 (6th Edition, ECMA-262)Значения параметров
Параметр | Описание |
---|---|
source | Целевой объект в котором производиться поиск символьных (Symbol) свойств. Обязательное значение. |
Пример использования
let myObj = {}; // инициализируем переменную, содержащую объект let first = Symbol( "mySymbol" ); // инициализируем переменную, содержащую символ let second = Symbol.for( "mySymbol2" ); // инициализируем переменную, содержащую символ // добавляем созданные символы в объект myObj[first] = "localSymbol"; myObj[second] = "globalSymbol"; console.log( myObj ); // {Symbol(mySymbol): "localSymbol", Symbol(mySymbol2): "globalSymbol"} // инициализируем переменную, содержащую массив, состоящий из всех символьных свойств переданного объекта let objectSymbols = Object.getOwnPropertySymbols( myObj ); console.log( objectSymbols.length); // 2 console.log( objectSymbols ); // [Symbol(mySymbol), Symbol(mySymbol2)] console.log( objectSymbols[0] ); // Symbol(mySymbol)JavaScript Object