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

145
Как мне объединить два объекта javascript вместе в ES6 +?

Мне надоело всегда писать такой код: function shallowExtend(obj1,obj2){ var key; for ( key in obj2 ) { if ( obj2.hasOwnProperty(key) === false ) continue; obj1[key] = obj2[key] } } Или, если я не хочу писать код сам, создайте библиотеку, которая это уже делает. Конечно, на помощь приходит ES6 +,...

145
forEach не является ошибкой функции с массивом JavaScript

Я пытаюсь сделать простой цикл: const parent = this.el.parentElement console.log(parent.children) parent.children.forEach(child => { console.log(child) }) Но я получаю следующую ошибку: VM384: 53 Uncaught TypeError: parent.children.forEach не является функцией Хотя parent.childrenжурналы: В чем...

144
Object.is vs ===

Я наткнулся на пример кода, в котором использовалось это сравнение: var someVar = 0; Object.is(false, someVar); //Returns false Я знаю, false == 0будет true, поэтому у нас есть ===. Чем Object.isотличается от ===?...

142
Обернуть длинную буквенную строку шаблона в многострочное, не создавая новую строку в строке

В шаблонных литералах es6 как можно обернуть длинный шаблонный литерал в многострочный, не создавая новую строку в строке? Например, если вы делаете это: const text = `a very long string that just continues and continues and continues` Затем он создаст символ новой строки для строки, интерпретируя...

139
Как использовать ES6 Fat Arrow для .filter () массива объектов

Я пытаюсь использовать функцию стрелки ES6 .filterдля возврата взрослых (Джек и Джилл). Кажется, я не могу использовать оператор if. Что мне нужно знать, чтобы сделать это в ES6? var family = [{"name":"Jack", "age": 26}, {"name":"Jill", "age": 22}, {"name":"James", "age": 5 }, {"name":"Jenny",...

137
Можно ли деструктурировать на существующий объект? (Javascript ES6)

Например, если у меня есть два объекта: var foo = { x: "bar", y: "baz" } и var oof = {} и я хотел перенести значения x и y из foo в oof. Есть ли способ сделать это с помощью синтаксиса деструктуризации es6? возможно что-то вроде: oof{x,y} =...

136
Перечисления в Javascript с ES6

Я перестраиваю старый Java-проект в Javascript и понял, что в JS нет хорошего способа сделать перечисления. Лучшее, что я могу придумать, это: const Colors = { RED: Symbol("red"), BLUE: Symbol("blue"), GREEN: Symbol("green") }; Object.freeze(Colors); constХранит Colorsот быть переназначены, и...

136
Object.freeze () против const

Object.freeze()кажется переходным методом удобства перехода к использованию constв ES6. Есть ли случаи, когда оба они занимают свое место в коде, или есть предпочтительный способ работы с неизменяемыми данными? Следует ли мне использовать Object.freeze()до того момента, как все браузеры, с которыми...

135
Как установить реквизиты компонента по умолчанию для компонента React

Я использую приведенный ниже код, чтобы установить свойства по умолчанию для компонента React, но он не работает. В этом render()методе я вижу, что вывод «undefined props» был напечатан на консоли браузера. Как я могу определить значение по умолчанию для свойств компонента? export default class...

135
Как импортировать и экспортировать компоненты, используя React + ES6 + webpack?

Я играю с Reactи ES6использую babelи webpack. Я хочу собрать несколько компонентов в разных файлах, импортировать в один файл и связать их сwebpack Допустим, у меня есть несколько таких компонентов: мой-navbar.jsx import React from 'react'; import Navbar from 'react-bootstrap/lib/Navbar'; export...

134
Класс ES6 Множественное наследование

Я провел большую часть своих исследований по этому поводу на BabelJS и на MDN (в котором нет никакой информации), но, пожалуйста, не стесняйтесь сообщить мне, если я недостаточно осторожен, ища дополнительную информацию о спецификации ES6. Мне интересно, поддерживает ли ES6 множественное...

134
Javascript ES6 / ES5 найти в массиве и изменить

У меня есть массив объектов. Хочу найти по какому-то полю, а потом его изменить: var item = {...} var items = [{id:2}, {id:2}, {id:2}]; var foundItem = items.find(x => x.id == item.id); foundItem = item; Я хочу, чтобы он изменил исходный объект. Как? (Мне все равно, будет ли это тоже в...

134
Как отобразить / уменьшить / отфильтровать набор в JavaScript?

Есть ли способ map/ reduce/ filter/ etc a Setв JavaScript или мне придется написать свой собственный? Вот несколько разумных Set.prototypeрасширений Set.prototype.map = function map(f) { var newSet = new Set(); for (var v of this.values()) newSet.add(f(v)); return newSet; }; Set.prototype.reduce =...

134
Можете ли вы связать это в стрелочной функции?

Я уже некоторое время экспериментирую с ES6 и только что столкнулся с небольшой проблемой. Мне очень нравится использовать стрелочные функции, и я использую их всякий раз, когда могу. Однако, похоже, их нельзя связать! Вот функция: var f = () => console.log(this); Вот объект, к которому я хочу...

132
setState () внутри componentDidUpdate ()

Я пишу сценарий, который перемещает раскрывающийся список ниже или выше ввода в зависимости от высоты раскрывающегося списка и положения ввода на экране. Также я хочу установить модификатор для раскрывающегося списка в соответствии с его направлением. Но использование setStateвнутри...

130
Получение «Невозможно вызвать класс как функцию» в моем проекте React

Я пытаюсь добавить в свой проект компонент карты React, но получаю ошибку. Я использую сообщение в блоге Fullstack React как ссылку. Я отследил, где возникает ошибка в строке 83 google_map.js: function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new...

129
Как импортировать jquery с использованием синтаксиса ES6?

Я пишу новое приложение, используя ES6синтаксис (JavaScript) через babelтранспилятор и preset-es2015плагины, а также semantic-uiдля стиля. index.js import * as stylesheet from '../assets/styles/app.scss'; import * as jquery2 from '../dist/scripts/jquery.min'; import * as jquery3 from...

129
Использование jQuery $ (this) с функциями стрелок ES6 (лексическая привязка this)

Прекрасно использовать стрелочные функции ES6 с лексической thisпривязкой. Однако минуту назад я столкнулся с проблемой, используя его с типичной привязкой кликов jQuery: class Game { foo() { self = this; this._pads.on('click', function() { if (self.go) { $(this).addClass('active'); } }); } }...