Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   почему вместо методов Array используют циклы (https://javascript.ru/forum/misc/43919-pochemu-vmesto-metodov-array-ispolzuyut-cikly.html)

cyber 23.01.2014 20:05

Цитата:

Сообщение от kobezzza
Я написал свой, он производит инлайнинг, декомпозицию, дополнительные кеширования и т.д. что в итоге позволяет нативному JIT максимально эффективно обрабатывать такие конструкции, в январе планирую описать в подробной статье, т.к. штука интересная оч получилась.

Ты еще не забыл про статью, интересно всетаки ?:)

kobezzza 26.01.2014 12:11

Цитата:

Сообщение от cyber (Сообщение 293680)
Ты еще не забыл про статью, интересно всетаки ?:)

Месяц ещё не закончен:) прост стараюсь работать по плану, со след недели приступаю к написанию статьи и релизу.

melky 26.01.2014 14:56

Цитата:

Сообщение от kobezzza (Сообщение 294136)
Месяц ещё не закончен:) прост стараюсь работать по плану, со след недели приступаю к написанию статьи и релизу.

хм. с помощью этой штуки можно такие вещи вытворять ... если будет хорошо спроектирована

было бы круто вкушать все прелести ФП с компиляцией в JS без потери производительности на функции.

т.е. :
ФП -> ИП, развороты рекурсий и т.д.

cyber 27.01.2014 19:14

Цитата:

Сообщение от kobezzza
Месяц ещё не закончен прост стараюсь работать по плану, со след недели приступаю к написанию статьи и релизу.

ждемс)

kobezzza 29.01.2014 15:35

Цитата:

Сообщение от cyber (Сообщение 294422)
ждемс)

Планирую в эту субботу/воскресение закончить.

cyber 29.01.2014 15:41

Цитата:

Сообщение от kobezzza
Планирую в эту субботу/воскресение закончить.

где смотреть? Хабр? гитхаб? или на форуме в оффтопе ссылку кинешь?

kobezzza 29.01.2014 15:46

Цитата:

Сообщение от cyber (Сообщение 294739)
где смотреть? Хабр? гитхаб? или на форуме в оффтопе ссылку кинешь?

тут на форуме кину ссылку на гитхаб)

kobezzza 02.02.2014 14:44

http://javascript.ru/forum/showthrea...370#post295370
https://github.com/kobezzza/Collection

kostyanet 03.02.2014 10:19

forEach выполняет те же циклы но за вас требуя от вас колбэка.

https://developer.mozilla.org/en-US/.../Array/forEach

С той разницей что недействительных членов вы не увидите:

var t = Object(this);

...

if (i in t)
fun.call(thisArg, t[i], i, t);

То есть

var arr=[];
arr[1] = 1;
arr[10] = 10;
console.log(arr.length); // 11

а forEach() выдаст ровно 2. Типо там map.

kostyanet 03.02.2014 10:25

Короткий ответ на вопрос темы: потому что массивы в js - угребище. Это называется ни вашим, ни нашим. Массивы не нормальные, то есть не массивы вовсе, но и не map (и значит не balanced tree). Вследствие чего народ юзает "объекты" в качестве map (dictionary канонично), а там без всяких форичей for in предусмотрен.


Часовой пояс GMT +3, время: 03:13.