Вопросы с тегом «ecmascript-5»

19
Какова цель ключевого слова var и когда я должен его использовать (или опустить)?
ПРИМЕЧАНИЕ . Этот вопрос был задан с точки зрения ECMAScript версии 3 или 5. Ответы могут устареть с появлением новых функций в выпуске ECMAScript 6. Что именно является функцией varключевого слова в JavaScript, и в чем разница между var someNumber = 2; var someFunction = function() { doSomething; } var …

7
Получить массив ключей объекта
Я хотел бы получить ключи объекта JavaScript в виде массива, либо в jQuery, либо в чистом JavaScript. Есть ли менее многословный способ, чем этот? var foo = { 'alpha' : 'puffin', 'beta' : 'beagle' }; var keys = []; for (var key in foo) { keys.push(key); }

8
Разница между заморозкой и печатью
Я только что услышал о методах JavaScript freezeи seal, которые можно использовать для того, чтобы сделать любой объект неизменным. Вот короткий пример, как его использовать: var o1 = {}, o2 = {}; Object.freeze(o2); o1["a"] = "worked"; o2["a"] = "worked"; alert(o1["a"]); //prints "worked" alert(o2["a"]); //prints "undefined" В чем разница между freezeи …

12
Что делает [] .forEach.call () в JavaScript?
Я просматривал некоторые фрагменты кода и обнаружил, что несколько элементов вызывают функцию по списку узлов с применением forEach к пустому массиву. Например, у меня есть что-то вроде: [].forEach.call( document.querySelectorAll('a'), function(el) { // whatever with the current node }); но я не могу понять, как это работает. Может ли кто-нибудь объяснить …


2
Javascript Уменьшить пустой массив
Когда я уменьшаю массив, я пытаюсь получить нулевое число, но я не совсем понимаю поведение функции [].reduce(function(previousValue, currentValue){ return Number(previousValue) + Number(currentValue); }); результат TypeError: Reduce of empty array with no initial value кажется, что если массив пуст, я не могу его уменьшить [""].reduce(function(previousValue, currentValue){ return Number(previousValue) + Number(currentValue); }); …

17
Динамически устанавливаемое свойство вложенного объекта
У меня есть объект, который может иметь любое количество уровней глубины и может иметь любые существующие свойства. Например: var obj = { db: { mongodb: { host: 'localhost' } } }; При этом я хотел бы установить (или перезаписать) такие свойства: set('db.mongodb.user', 'root'); // or: set('foo.bar', 'baz'); Где строка свойств …

7
Почему объекты в JavaScript не обрабатываются?
Почему по умолчанию объекты не повторяются? Я все время вижу вопросы, связанные с итерацией объектов, обычное решение - перебирать свойства объекта и таким образом получать доступ к значениям внутри объекта. Это кажется настолько обычным, что мне интересно, почему сами объекты не повторяются. Такие утверждения, как ES6, for...ofбыло бы неплохо использовать …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.