Запитання з тегом «ecmascript-6»

Версія 2015 року специфікації ECMAScript, яка тепер є стандартом (ECMAScript 2015). Використовуйте цей тег лише тоді, коли питання конкретно стосується нових функцій або технічних змін, передбачених ECMAScript 2015.

8
Як JSON.stringify ES6 Map?
Я хотів би почати використовувати ES6 Map замість об'єктів JS, але мене стримують, тому що я не можу зрозуміти, як JSON.stringify () Map. Мої ключі гарантовано будуть рядками, і мої значення завжди будуть у списку. Чи справді мені потрібно писати метод обгортки для серіалізації?

6
Чому реквізити JSX не повинні використовувати функції стрілок або прив'язувати їх?
Я запускаю ворсинку зі своїм додатком React, і я отримую цю помилку: error JSX props should not use arrow functions react/jsx-no-bind І ось я запускаю функцію стрілки (всередині onClick): {this.state.photos.map(tile => ( <span key={tile.img}> <Checkbox defaultChecked={tile.checked} onCheck={() => this.selectPicture(tile)} style={{position: 'absolute', zIndex: 99, padding: 5, backgroundColor: 'rgba(255, 255, 255, 0.72)'}} …

5
Node.js ES6 класи з попитом
Так що до цього часу я створював класи та модулі node.jsтаким чином: var fs = require('fs'); var animalModule = (function () { /** * Constructor initialize object * @constructor */ var Animal = function (name) { this.name = name; }; Animal.prototype.print = function () { console.log('Name is :'+ this.name); }; …

12
setState не оновлює стан відразу
Я хотів би запитати, чому мій стан не змінюється, коли я роблю подію onclick. Я шукав деякий час тому, що мені потрібно прив'язати функцію onclick у конструкторі, але все ще стан не оновлюється. Ось мій код: import React from 'react'; import Grid from 'react-bootstrap/lib/Grid'; import Row from 'react-bootstrap/lib/Row'; import Col …

4
Для чого потрібні геттери та сетери в класах ECMAScript 6?
Мене бентежить питання про те, що стосується геттерів та сетер у класах ECMAScript 6. Яка мета? Нижче наведено приклад, про який я маю на увазі: class Employee { constructor(name) { this._name = name; } doWork() { return `${this._name} is working`; } get name() { return this._name.toUpperCase(); } set name(newName){ if(newName){ …

13
порівняння множин ECMA6 для рівності
Як ви порівнюєте два набори javascript? Я спробував з допомогою ==і , ===але як повернути помилкове. a = new Set([1,2,3]); b = new Set([1,3,2]); a == b; //=> false a === b; //=> false Ці два набори рівнозначні, тому що за визначенням множини не мають порядку (принаймні, зазвичай). Я переглянув …

3
JSON stringify Set
Як би один JSON.stringify () в комплект ? Речі, які не працювали в Chromium 43: var s = new Set(['foo', 'bar']); JSON.stringify(s); // -> "{}" JSON.stringify(s.values()); // -> "{}" JSON.stringify(s.keys()); // -> "{}" Я очікував би отримати щось подібне до серіалізованого масиву. JSON.stringify(["foo", "bar"]); // -> "["foo","bar"]"

5
Що саме робить функція анонімного JavaScript f => f?
Я використовую сторонню бібліотеку, яка має функцію, яка приймає функції як аргументи. Я роблю деякі умовні перевірки, щоб вирішити, чи потрібно додавати певну функцію в якості параметра, а в деяких випадках я не хочу надати функцію. Надання нуля в цих випадках призводить до помилки. Я знайшов цей код, який працює, …

5
Webpack babel 6 декораторів ES6
У мене є проект, написаний в ES6, з webpack як мій постачальник. Більшість трансліпінгу працює добре, але коли я намагаюся включати декораторів де завгодно, я отримую цю помилку: Decorators are not supported yet in 6.x pending proposal update. Я переглянув трекер випуску вабелів, і там не зміг знайти нічого, тому …

7
Чому я можу змінити значення константи в javascript?
Я знаю, що ES6 ще не стандартизований, але в даний час багато браузерів підтримують const ключові слова в JS. У специфікації написано, що: Значення константи не може змінюватися шляхом повторного призначення, а константа не може бути повторно оголошена. Через це, хоча можливо оголосити константу, не ініціалізуючи її, робити це було …

6
Перетворити ES6 Iterable на Array
Скажімо, у вас є схожий на масив Javascript ES6 Iterable, який ви заздалегідь знаєте, буде обмежений, який найкращий спосіб перетворити його на масив Javascript? Причиною цього є те, що багато бібліотек js, такі як підкреслення та лодаш, підтримують лише масиви, тому, якщо ви хочете використовувати будь-яку їхню функцію в Iterable, …

2
Чому Babel перезаписує імпортовану функцію викликає (0, fn) (…)?
Дано вхідний файл типу import { a } from 'b'; function x () { a() } Вавилон складе його 'use strict'; var _b = require('b'); function x() { (0, _b.a)(); } але при компіляції у вільному режимі виклик функції виводиться як _b.a(); Я провів кілька досліджень того, куди додається оператор …

5
Обіцяє, передайте додаткові параметри, щоб потім ланцюг
Обіцянка, лише наприклад: var P = new Promise(function (resolve, reject) { var a = 5; if (a) { setTimeout(function(){ resolve(a); }, 3000); } else { reject(a); } }); Після того, як ми зателефонуємо, тоді метод на обіцянку: P.then(doWork('text')); Функція doWork виглядає приблизно так: function doWork(data) { return function(text) { // …

2
ES6 геттер / сеттер з функцією стрілки
Я використовую babel6, і для свого проекту для домашніх тварин я створюю обгортку для XMLHttpRequest для методів, які я можу використовувати: open = (method, url, something) => { return this.xhr.open(method, url, something); } але для властивостей функція стрілки не працює це працює: get status() { return this.xhr.status; } але я …

11
Глибока копія в ES6 із використанням синтаксису поширення
Я намагаюся створити метод глибокої копії карти для мого проекту Redux, який буде працювати з об'єктами, а не з масивами. Я читав, що в Redux кожен штат не повинен нічого змінювати в попередніх штатах. export const mapCopy = (object, callback) => { return Object.keys(object).reduce(function (output, key) { output[key] = callback.call(this, …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.