Бред


Ответить в тред Ответить в тред

<<
Назад | Вниз | Каталог | Обновить тред | Автообновление
53 11 17

Аноним 26/02/19 Втр 02:02:37 1921100481
js.png (36Кб, 500x500)
500x500
JS вопрос. Вижу что с появлением ES6, появилось жесткое правило : либо const, либо let. И у меня такой вопрос. Вот есть цикл for и в заголовке мы по новым правилам пользуемся let i , ну и как обычно. В JS учебнике сказано, что на каждую итерацию создается своя новая переменная. Правильно ли я понимаю, что мы каждый раз выделяем новое место под туже переменную с новым значением и каждый раз её выкидываем (если это не замыкание)? И если это так, то разумно предположить, что это явно медленнее чем обычный var, который будет просто менять значение в конкретном участке памяти.
Аноним 26/02/19 Втр 02:02:54 1921100532
бамп
Аноним 26/02/19 Втр 02:03:37 1921100673
бамп
Аноним 26/02/19 Втр 02:03:53 1921100754
бамп
Аноним 26/02/19 Втр 02:04:12 1921100785
бамп
Аноним 26/02/19 Втр 02:04:20 1921100816
Юзай вар и не выебывайся.
Аноним 26/02/19 Втр 02:04:31 1921100857
бамп
Аноним 26/02/19 Втр 02:05:44 1921101088
>>192110081
так я бы и продолжил, но у меня вот буквально недавно товарищ устроился и ему сразу сказали: var забываем, есть только let и const.
Аноним 26/02/19 Втр 02:06:05 1921101179
>>192110048 (OP)
Если бы она каждую операцию новая сохранялась, то как бы она инкрементировалась бы? Тогда любой цикл for стал бы бесконечным, не?

Алсо старые браузеры соснут у скриптов со всякими хипстерскими let?
Аноним 26/02/19 Втр 02:06:13 19211012310
бамп
Аноним 26/02/19 Втр 02:06:32 19211012811
>>192110108
>и ему сразу сказали: var забываем, есть только let и const.
Чем обусловлено? Просто потому что МОДНО?
Аноним 26/02/19 Втр 02:08:19 19211016912
>>192110117
>Если бы она каждую операцию новая сохранялась,
Если бы она каждую операцию новая создавалась
slowfix
Аноним 26/02/19 Втр 02:08:32 19211017313
>>192110048 (OP)
Все равно один раз объявится. Алсо, не помню, когда последний раз писал обычный цикл на js.
Аноним 26/02/19 Втр 02:09:07 19211018414
>>192110128
Ну их не просто так ввели - чтобы коленку себе не прострелить.
Аноним 26/02/19 Втр 02:09:28 19211019215
>>192110128
> >и ему сразу сказали: var забываем, есть только let и const.
> Чем обусловлено? Просто потому что МОДНО?

А такая причина очень распространена. Вместо практической пользы любят пускать в ход всякую дичь, лишь бы стильно и не как у всех. На работе нахуй.
Аноним 26/02/19 Втр 02:09:43 19211019516
>>192110128
Потому что у вар естт опасность в виде случайного переопределения
Аноним 26/02/19 Втр 02:10:21 19211020617
>>192110048 (OP)
ты можешь безопасно создавать новые функции внутри цикла for:

for(let i = 0; i < +Infinity; i++) {
doSomething(() => {
console.log(`Finished ${i}`);
});
}

с var точно такой же код не прокатит, придётся создать новое замыкание:

for(var i = 0; i < +Infinity; i++) {
(it => {
doSomething(() => {
console.log(`Finished ${it}`);
});
})(i);
}
Аноним 26/02/19 Втр 02:10:27 19211020718
Аноним 26/02/19 Втр 02:12:03 19211024019
Аноним # OP 26/02/19 Втр 02:15:07 19211030720
>>192110206
я сохранил твой ответ и вернусь к нему позже. Похоже у меня не хватает еще понимания или опыта.
Аноним 26/02/19 Втр 02:17:54 19211037621
Untitled.png (11Кб, 221x664)
221x664
Аноним 26/02/19 Втр 02:18:23 19211039222
15387566838440.jpg (34Кб, 560x560)
560x560
Стоит ли учить Vue или не выебываться и остановиться на реакте?
Аноним 26/02/19 Втр 02:19:47 19211042623
Аноним 26/02/19 Втр 02:19:50 19211042824
>>192110392
>Vue
>Хуе
Хипстер дохуя? Смузи хлебаешь?
Аноним 26/02/19 Втр 02:20:21 19211044125
>>192110426
Это язык, ты, тупой гуманитарий.
Аноним 26/02/19 Втр 02:20:31 19211044526
>>192110392
Его быстрее выучить, чем спрашивать.
Аноним 26/02/19 Втр 02:21:29 19211047027
image.png (26Кб, 381x807)
381x807
>>192110376
Пожалуйста не пиши на двач, если ты такой тупой
Аноним 26/02/19 Втр 02:21:52 19211047728
>>192110441
Это не язык людей, значит те кто его используют - не люди.
Аноним 26/02/19 Втр 02:23:09 19211050229
>>192110428
Недавно подвороты начал делать, но это из-за того что голодаю и штаны теперь спадают
Скорее всего буду самым цисгендерным в коллективе
Аноним 26/02/19 Втр 02:30:10 19211062930
Аноны, есть смысл учить js, если не хочу писать веб, а хочу удобный язык под разные сложные штуки, в частности хочу освоить ИИ и разные сложные штуки
Аноним 26/02/19 Втр 02:30:59 19211065031
Аноним 26/02/19 Втр 02:31:03 19211065332
>>192110629
Тебе маня-мирок нужен, а не язык программирования.
Аноним 26/02/19 Втр 02:31:06 19211065533
Аноним 26/02/19 Втр 02:32:33 19211068434
Аноним 26/02/19 Втр 02:33:34 19211069735
>>192110655
В питон надо тем, кто хочет разочароваться в программировании, не начиная.
Аноним 26/02/19 Втр 02:35:58 19211074136
Screenshot 2019[...].png (39Кб, 1110x178)
1110x178
>>192110655
Написал hello world на питоне. Как теперь создать свой ИИ?
Аноним 26/02/19 Втр 02:37:33 19211077437
428542.jpg (1329Кб, 1920x1200)
1920x1200
Аноним 26/02/19 Втр 02:38:54 19211079738
>>192110048 (OP)
зависит от JS движка и как он оптимизирует на самом деле. Движки умные так что вряд ли они будут создавать новую переменную для каждой итерации лул, так что не парься.
Аноним 26/02/19 Втр 02:41:33 19211085539
>>192110048 (OP)
Смотри, цикл for состоит из трёх фаз:
for ([инициализация]; [проверка]; [модификация])
Не ебу, откуда ты взял создание переменной на каждую итерацию, если из самого названия "инициализация" понятно, что она проходит только один раз при старте цикла?
Аноним 26/02/19 Втр 02:44:14 19211090540
>>192110128
let видна в пределах фигурных скобок, а за пределами них автоматически уходит в сборщик мусора
const - то же самое, но нельзя перезаписывать
var видна во всём коде практически, в том числе до определения переменной да, это так
Аноним # OP 26/02/19 Втр 02:44:43 19211091641
Аноним 26/02/19 Втр 02:45:57 19211093342
>>192110392
Учи реакт, с ним ещё сможешь клепать приложения через реакт натив
Аноним 26/02/19 Втр 02:48:07 19211097743
>>192110048 (OP)
Ты, видимо, читаешь учебник на ангельском через переводчик. Первая часть цикла for выполняется один раз при входе в цкил.
Другое дело, что с вложенными циклами с оговоркой и там действительно создается новая переменная, но для каждой итерации цикла, в которой он был вложен.
Аноним 26/02/19 Втр 02:51:39 19211104244
>>192110916
>При объявлении переменной в цикле for(let …) – она видна только в этом цикле. Причём каждой итерации соответствует своя переменная let.

Где там написано, что на каждую итерацию создается одна переменная?
Аноним # OP 26/02/19 Втр 02:54:52 19211111045
image.png (4Кб, 722x33)
722x33
Аноним 26/02/19 Втр 02:56:05 19211113346
15505064034530.png (17Кб, 566x184)
566x184
помогите опознать шрифт
Аноним 26/02/19 Втр 02:57:42 19211116047
>>192110048 (OP)
Сделай бенчмарк, это просто. Никакой старый браузер не соснет от лет или конст, после транспайлера лет превратится в вар
Аноним # OP 26/02/19 Втр 03:05:31 19211130348
image.png (27Кб, 886x350)
886x350
>>192110977
>>192111042

Вот пример из книжки. Здесь в массив пушатся функции с i на текущий момент. Возвращается массив с функциями, каждая из которых ссылается на своё лексическое i, что равносильно тому, что каждая итерация создает свою i и не чистит её из-за замыкания. Разумно предположить, что обычный цикл также каждый раз инициализирует i и так же её уничтожает.
Аноним 26/02/19 Втр 03:08:24 19211136049
Блядь, я нихуя не могу понять, что значит "Возвращать". Что это? Дает результат? Или что? Почему именно так называется?
Аноним 26/02/19 Втр 03:08:39 19211136750
image.png (8Кб, 556x197)
556x197
Аноним 26/02/19 Втр 03:09:55 19211139351
>>192111110
В теле цикла ты получаешь возможность работать с переменной благодаря тому, что в каждой новой итерации создается независимая переменная, значение которой копируется в переменную цикла в конце каждой итерации. Кури экму, еба.
http://www.ecma-international.org/ecma-262/7.0/index.html#sec-for-statement-runtime-semantics-labelledevaluation
Аноним 26/02/19 Втр 03:20:38 19211161852
>>192111360
Просто выдает результат вычисления. В джс все операторы возвращают значение, даже запятая и присваивание. Функции тоже. Даже пустая вернет undefined.
Аноним 26/02/19 Втр 03:21:04 19211162553
1-242.jpg (67Кб, 500x361)
500x361
>>192111360
Исторически - класть на стек и убегать.
Аноним # OP 26/02/19 Втр 03:30:54 19211181954
Настройки X
Ответить в тред X
15000 [S]
Макс объем: 20Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
X
Ваш шидевор X
Стикеры X
Топ тредов
Избранное