Size: a a a

2021 January 03

K

Kosanyak in javascript_ru
а они почему то не указываютса
источник

НС

Никита Сковорода... in javascript_ru
Kosanyak
а они почему то не указываютса
а если 0 указать, что будет — проверял?
источник

НС

Никита Сковорода... in javascript_ru
Вместо 37
источник

АП

Авраам Петрович... in javascript_ru
Здравствуйте.
Кто подскажет как конвертировать генератор в итератор?

Проще говоря есть обьект со свойством list, где массив лежит.

я хотел бы пробежать по этому свойству forIn-ом, и чтобы пробросить это на реализацию итератора Iterable<T>
источник

АП

Авраам Петрович... in javascript_ru
class MyCollection implements Iterable<MyObject> {
 protected list: array;

 next() {
   for (let i in list) {
    yield list[i]; // ? how to
   }
 }
}
источник

К

Константин in javascript_ru
Авраам Петрович
class MyCollection implements Iterable<MyObject> {
 protected list: array;

 next() {
   for (let i in list) {
    yield list[i]; // ? how to
   }
 }
}
Класс должен возвращать итератор.
Есть символ для этого
источник

АП

Авраам Петрович... in javascript_ru
верно тут в реализации написано такое

   [Symbol.iterator](): Iterator<number> {
       throw new Error("Method not implemented.");
   }

если он вернет new Iterator() это то что требуется по интерфейсу?
источник

К

Константин in javascript_ru
Чё
источник

К

Константин in javascript_ru
Нету конструктора итератора
источник

К

Константин in javascript_ru
Это объект вида:
{

   value: T;
   next();
   done: boolean;

}
источник

АП

Авраам Петрович... in javascript_ru
Константин
Нету конструктора итератора
понял, и как ему вернуть тогда итератор здесь?
источник

АП

Авраам Петрович... in javascript_ru
да, и мне нужно реализовывать у пустого обьекта счетчики как написано в мануалах или есть уже реализованный List которым можно обернуть массив или обьект?
источник

К

Константин in javascript_ru
источник

К

Константин in javascript_ru
Ну кстаи, у тебя елда там
источник

АП

Авраам Петрович... in javascript_ru
Константин
Ну кстаи, у тебя елда там
а, точно, подходит, спасибо!
источник

К

Константин in javascript_ru
Авраам Петрович
а, точно, подходит, спасибо!
Ты вообще можешь сделать тупее:
Вернуть итератор листа, просто пробросить.
Если тебе не нужно внутри что-то делать.

Тип:

class A {
    list = [];

    [Symbol.iterator]() {

          return list[Symbol.iterator]
    }

}
источник

w

whyamsx in javascript_ru
Кстати вопрос есть такой у меня.. где редакс хранит состояние которое он юзает?

Просто меня вводит заблуждение такая конструкция, когда инишиалСтейт создаётся вообще где-то за пределами всего и передаётся как необязательный параметр в редюсер
Но при этом редюсер внутри себя меняет тот стейт что в него вошёл в начале функции
По такой логике все остальные изменения должны тоже отталкиваться от первоначального состояния

Но у меня есть подозрения что всё каким-то образом хранится в кртейтСтор, но я всё равно не понимаю почему...
источник

w

whyamsx in javascript_ru
А я тупой
источник

w

whyamsx in javascript_ru
Для этого же и есть диспатч чтобы не вызывать повторно редюсер
источник

w

whyamsx in javascript_ru
Спасибо братья я бы без вас это не понял!!!
источник