Size: a a a

JavaScript Noobs — сообщество новичков

2020 July 03

ES

Evgeniy Safronov in JavaScript Noobs — сообщество новичков
Есть еще какие-то подводные камни?
источник

j

jk in JavaScript Noobs — сообщество новичков
Evgeniy Safronov
Есть еще какие-то подводные камни?
let объявленный внутри фигурных скобок не виден снаружи.
источник

ES

Evgeniy Safronov in JavaScript Noobs — сообщество новичков
Это я знаю
источник

j

jk in JavaScript Noobs — сообщество новичков
Ну удачи тогда.
источник

ES

Evgeniy Safronov in JavaScript Noobs — сообщество новичков
Спасибо тебе, но я по прежнему не понимаю почему при finde и изменении у меня мутировался объект, при условии что let division = branche.divisions.find(division => division.cityId === city.cityId); я его каждый раз обновлял либо объектом либо undefined
источник

j

jk in JavaScript Noobs — сообщество новичков
Evgeniy Safronov
Спасибо тебе, но я по прежнему не понимаю почему при finde и изменении у меня мутировался объект, при условии что let division = branche.divisions.find(division => division.cityId === city.cityId); я его каждый раз обновлял либо объектом либо undefined
Ты находишь в оригинальном массиве divisions объект, меняешь ЕМУ свойства. Он теперь лежит в оригинальной структуре с изменёнными свойствами. Потом находишь его снова. А у него уже свойства которые ты выставил ранее.
источник

VL

V. Lavrinovics 🇦🇹... in JavaScript Noobs — сообщество новичков
Подскажите, как исправить.
При прокрутке в правой стороне полоски должны нормально работать. Но в данном примере они работают не всегда правильно. https://codepen.io/Vitalijs/pen/bGEaomV
источник

j

jk in JavaScript Noobs — сообщество новичков
Evgeniy Safronov
Спасибо тебе, но я по прежнему не понимаю почему при finde и изменении у меня мутировался объект, при условии что let division = branche.divisions.find(division => division.cityId === city.cityId); я его каждый раз обновлял либо объектом либо undefined
const test = [{ a: 1 }]
test.forEach(obj => { obj.a = 2 })
console.log(test[0].a)
источник

ES

Evgeniy Safronov in JavaScript Noobs — сообщество новичков
Разве таким образом не копируется объект в локальную переменную?

let division = branche.divisions.find(division => division.cityId === city.cityId);

Которая должна жить до конца операции/цикла? Никак не меняя основную структуру этого объекта в branches
источник

j

jk in JavaScript Noobs — сообщество новичков
Evgeniy Safronov
Разве таким образом не копируется объект в локальную переменную?

let division = branche.divisions.find(division => division.cityId === city.cityId);

Которая должна жить до конца операции/цикла? Никак не меняя основную структуру этого объекта в branches
Неа. Объекты передаются по ссылке

const test = 2
let test2 = test
test2 = 3
console.log(test, test2)

const test = { a: 3 }
const test2 = test
console.log(test.a, test2.a)
test.a = 2
console.log(test.a, test2.a)
источник

j

jk in JavaScript Noobs — сообщество новичков
Чтобы скопировать не примитив тебе нужно приложить усилия.
источник

ES

Evgeniy Safronov in JavaScript Noobs — сообщество новичков
Не знал что в JS так, спасибо большое
источник

ES

Evgeniy Safronov in JavaScript Noobs — сообщество новичков
Но вообще очень странно для меня видить передачу объектов сразу по ссылке, без какого либо аперсанта
источник

j

jk in JavaScript Noobs — сообщество новичков
Evgeniy Safronov
Не знал что в JS так, спасибо большое
Тогда тебе сюда, причём срочно xD
источник

j

jk in JavaScript Noobs — сообщество новичков
Evgeniy Safronov
Но вообще очень странно для меня видить передачу объектов сразу по ссылке, без какого либо аперсанта
Особенно если ты из языков C/++ стиля пришёл.
источник

j

jk in JavaScript Noobs — сообщество новичков
Тут настолько всё по другому, что лучше прочти учебник.
источник

ES

Evgeniy Safronov in JavaScript Noobs — сообщество новичков
Хорошо, почитаю обязательно
источник

ES

Evgeniy Safronov in JavaScript Noobs — сообщество новичков
Только коллеги с хорошо развитой интуицией поймут такие имена. Вообще, старайтесь сокращать всё. Только одарённые интуицией люди достойны заниматься поддержкой вашего кода.
источник

ES

Evgeniy Safronov in JavaScript Noobs — сообщество новичков
Жуть
источник

j

jk in JavaScript Noobs — сообщество новичков
Забавный раздел.
источник