Это всё херня, я вот жду когда рефы введут.
Что-то типа: let foo = 1; function set2(bar*) { bar = 2; } set2(foo); console.log(foo) // 2 Вот тогда то всё и сломают полностью.) |
Цитата:
Хотя, да. Иногда (лично мне) приходилось буквально на ощупь несколько раз переписывать выражение, чтобы всё заработало как надо.:lol: А «x.0 … x.25» - нигде не встречается и её можно безопасно вводить в спецификацию… |
Цитата:
Свойство после "." должно быть задано идентификатором, а не числом или еще чем либо. Если в x.0 "0" это свойство, то такими же свойcтвами должны быть и любые другие числа (x.1, x.42 .... ) А как на счет x.3.14159? |
Цитата:
Я вот только слышал про неизменяемые массивы (кртеж, tuple) и неизменяемы простые объекты (record) Цитата:
А в js рефы и так есть let x = {a: 0, b: 1} В х содержится не объект, а ссылка на объект. |
Цитата:
|
Это не поломало существующий синтаксис и не привело к синтаксическим неоднозначностям. Просто введены новые операции, задаваемы новыми синтаксическими конструкциями ("??", "?."). Никакие старые синтаксисы и правила при этом не затронуты. Это так же безболезненно, как была введена операция "**"
Никто не будет вводить новую операцию для обращения к свойству, заданному чиcлом, т.к. такая операция уже есть - x[0]. |
Цитата:
Которое больше как фонит тем что вы не разобрались в разнице , мол эзотерика. Нет эзотерики, код для шага цикла ничего не возвращает, поэтому для него нет разницы, и писать ++i несколько паливно |
Цитата:
Я бы его отнес к такому запаху кода как "obscured intent". В коде у нас побитовая операция, но производим мы не ее, а использует ее сайдэффект по отбрасыванию дробной части и знание что "или" с "нулем" ничего не изменит. Цитата:
|
Цитата:
Надо знать все особенности выполнения операции. Так же как надо знать все особенности ++x и x++ - то, что это не просто прибавление 1 к x Так же, как знать особенности выполнения операций && и || (то, что логические значения только вычисляются, но не возвращаются) Человек, читающий код должен знать это. Тогда ему будет понятно. |
Цитата:
В js почему то так вышло, что везде очень много тонкостей, пример - дока к оператору "==", которые видимо предлагается учить наизусть, когда это твой один язык в стеке, то куда не шло, а иначе ... |
Часовой пояс GMT +3, время: 07:07. |