Цитата:
|
Цитата:
|
Можно, кстати, еще и от for in отказаться:
let numbers = { one: 1, two: 2, three: 3 } for (let numberName of Object.keys(numbers)) { //no need for Object.hasOwnProperty console.log(numberName); } |
Zend, забил болт, сказал пусть сами делают свой медиа стриминг, я до пишу плеер и умываю руки)
|
Цитата:
|
melky, всетаки решил проблему, настроил https://wmspanel.com/nimble/demo и забыл)
|
Кто уже пробывал https://facebook.github.io/react-native/ ?
Что с производительностью? |
cyber,
так оно же пока только для яблоидов, не? |
Safort, как я понял, да.
|
Цитата:
numbers = { one: 1, two: 2, three: 3 } myNumbers=Object.create(numbers) myNumbers.four=4 for(numberName of Object.keys(myNumbers)) { console.log(numberName); } // four А вот твое говно, как раз, не нужно. numbers = { one: 1, two: 2, three: 3 } forIn=function(o, clb){ for(var i in o) {if(!o.hasOwnProperty(i)) return; clb(o[i])} } forIn(numbers, function(x){console.log(x)}) |
newuser1001,
Оба пригодятся. Плохо, когда не добавляют новые конструкции и приходиться пилить свои 100 велосипедов. |
Gozar,
Да не, чистый язык всяко лучше. жаба нам как бы намекает на это. |
Цитата:
|
Кто сталкивался с проблемой что видео не рисуется на canvas на мобильных платформах?
ДЕмка не много кривая http://151.248.122.145/player/infinityplayer.html (нужно тыкнуть на квадрат когда видео появится :)) рисование выглядит как то так. ctx.drawImage( video, 0, 0 ); |
Цитата:
|
Цитата:
--- Сейчас собираю мини "библиотеку" под свои нужды (не для DOM), чтобы не зависеть от синтаксиса и реализации подключенных фреймворков и библиотек: angular.forEach(iterable, function(value, key){}); jQuery.each(iterable, function(key, value){}); // я решил юзать for(let {node, key} of new Iterator(iterable)) {/* code here*/} вместо forEach angular.extend(); jQuery.extend(); // angular.copy(); и т.п. Плюс необходимые мне базовые классы, которые использую практически в каждом приложении. Как оно именно называться будет, еще не решил (да и это не важно). За пару часов вчерашнего дня успел собрать это. Тащу по кускам из проектов) На es6 + modules выглядит оч. круто/лаконично =) Хочу юзать примерно так: var iterator = new __.Iterator(iterable); // где __ - мой namespace |
Цитата:
|
А я стал юзать абстрактные ссылки и мир стал краше :)
[]::forEach {}::forEach new Map()::forEach И т.д. В качестве бекэнда Collection разумеется :) |
Цитата:
|
Цитата:
|
Цитата:
[].forEach.call ? |
Цитата:
|
Цитата:
|
Цитата:
Я думал на предмет Цитата:
1. нет надобности создавать функцию и думать о передаче контекста (this) 2. есть родные continue, break Это мое мнение, никого не склоняю на свою сторону :) --- Отступление. Неделю-другую назад запилил (для себя) пример, чтобы понять как перебирают либы и добиться нужного мне поведения итератора. -- Цитата:
1. хотелось бы что-то более осмысленное 2. с другой стороны, не важно, как она будет называется, т.к. эта строка решает все import * from 'path'; // or import {Iterator} from 'path'; а если импорта не будет и библиотека будет подключена самостоятельно, деструктуризация мне в руки: const {Iterator, extend} = __; // usage let object = extend({a:1}, {b:2}, {c:3}); :) |
Цитата:
|
Цитата:
|
Цитата:
Но, лично мне хотелось бы видеть цикл (та же подсветка синтаксиса, читабельность), кроме того Цитата:
+ я могу сделать return в любой момент из цикла (или двух вложенных циклов, например) forEach не возвращает ничего alert([1].forEach(function(){})); т.е. для ФП он не годится. Если мне нужно ФП, я воспользуюсь collection) Цитата:
|
Цитата:
А ещё можно __yes __yes.myFirstTime; или wow.method() |
nerv_, если миассв изменится во время итерации твой цикл сломается, а forEach гарантировано пробежится по всем элементам. это к слову ведь вы ж нубы не знаете разницы (все кроме kobezzza конечно, этот чел делом заслужил мое уважение)
|
Цитата:
p.s.: добавил еще минус тебе в карму :) |
Цитата:
|
|
Цитата:
|
Zend,
легко) for (let i = 0; i < arr.length; i++) { //изменяем итерируемый массив arr. } |
<script src=http://nervgh.github.io/js/recursive-iterator.min.js></script> <script> var object = {a:true, b:NaN}; var iterator = new RecursiveIterator(object); object = null; console.log('0=', object); setTimeout(function() { console.log('1=', iterator.next().value); }, 1000); setTimeout(function() { console.log('2=', iterator.next().value); }, 2000); setTimeout(function() { console.log('3=', iterator.next().value); }, 3000); </script> Кстати, мою статью на хабре про итератор зарезали. Видимо, у них в модерации Максимусы сидят :) |
Цитата:
Ничему вы так и не научились, обычные люди. Например если есть массив хандлеров события, и мы побегаемся в цикле и выполняем их, а в одном их хендлеров есть отписка от события. Например this.off(handler) что изменит массив во время пробегания по нему, и не все хендлеры вызовутся. ПО этому надо либо слайсить массив перед итерацией либо использовать итератор forEach Эх детишки, вот учишь вас учишь и ни какой благодарности) одна зависть моему уму и способностям ^^ но я привык, стадо всегда ставило гениям палки в колеса :D |
Цитата:
впрочем не удивительно, я же говорю тут 2-3 человека умных включая меня, остальные даже программировать то толком не умеют не то что логически мыслить |
Safort,
Это называется - пилить сук на котором сидишь. Ни разу не видел где бы такой приём понадобился. |
Zend,
это не важно, я просто ответил на твой вопрос) Цитата:
|
Цитата:
|
Часовой пояс GMT +3, время: 17:36. |