ок, спасибо, буду знать. Потому как еще весной это был не утвержденный стандарт.
Проблема как раз в том, что развитие языков движется в сторону легкой читаемости. И если есть вещи, которые интуитивно воспринимаются не так, как есть на самом деле, они должны быть исключены из синтаксиса.
Кстати, так а какую я задачу хотел решить? :)
«Оператор new создает экземпляр объекта, встроенного или определенного пользователем, имеющего конструктор.»
developer.mozilla.org/...t/Reference/Operators/new
Object() - это конструктор?
В любом языке есть правила. Они позволяют не заучивать тонны конкретных применений, а выучить одну логическую цепочку, которая позволит правильно построить выражение.
Так вот согласно какому логическому правилу в этом случае конструкция «new» не поможет?
Это особенность конкретного применения к конструктору Object()? Ок, но тогда это не правило, а исключение. А об исключениях в документации принято упоминать. Чего на странице
developer.mozilla.org/...t/Reference/Operators/new
не сделано.
Потому люди, читающие доку, и могут войти в заблуждение.
ну вы в ленту посмотрите и сразу таких найдете :)
тупизм задач показывает полноту понимания предмета. Конечно, такого кода реально писать никто не должен, но зато быстро можно проверить, знает ли человек, как работает «new».
не чего сразу фейспалм? Почти нигде не видно использования пока. Так что простительно не сенйорам :)
именно. Способов есть много.
Просто тут хотел показать, как многие ошибочно принимают слово new за новую копию объекта.
появился, но в ES6 этого кажись еще нет.
Кстати, а сможете объяснить разницу между Object и new Object?
:) по ссылке, конечно, вещи веселые, но настолько же логичные, как и попытки сложить что они там складывают
Ок. Тривиальная задача:
есть шаблон некой структуры данных. Надо минимальными средствами сделать 2 отдельные копии, а не ссылки на один и тот же объект. В языках, поддерживающих классы, это элементарно. Но не в JS.
Танцевать надо от того, какую конкретно проблему решает тот или иной скрипт. И проблемы в основном 3:
1) скорость и удобство написания кода (не все учились сразу писать на JS),
2) читабельность получаемого кода (тут с ES6 трудно соперничать),
3) дополнительный функционал (и вот тут уже каждый ищет то, чего ему не хватает. Например, TypeScript может назначать переменным типы, как в более строгих языках. Не всегда это надо, но если надо, то ES6 этого делать не может, да и похоже не будет.)
Потому какая разница что куда взлетело или нет. Если у вас есть задача, для которой оптимально использовать не чистый JS, то выбирайте, что подходит, и используйте.
Смысл этой рекламы, если там мест уже давно нет? Нашли бы новое помещение побольше, что ли.
Спасибо за поддержку :)
На самом деле я учился программировать (тоже самостоятельно) еще в университете, писал на С, понимал, что такое алгоритмы, ООП и т.д.. Но в то время перспектива быть программистом была не такой многообещающей. А сейчас пришло время вспоминать и учить новое.
Еще ни один полезный навык я не получил в нашей образовательной системе. Все, что мне пригодилось в жизни, я добывал сам. Кроме английского. И то, когда была возможность учить его на шару, учил так себе. Пришлось потом догонять самостоятельно.
Приходит время действий, а не бумажек. Нормальный работодатель ищет опыт или хотя бы знания. Их можно показать не только Гарвардским дипломом, но и выполненными работами. Вот мне 46, сосредоточился на Javascript/CSS/HTML. По опыту работы я Junior и почти без наработанных проектов, но это не помешало мне за первые 2 недели на фрилансе заработать в режиме средней зарплаты по отрасли.
Английский — это важно. Ну и знать, как писать код безусловно.
Если есть доступ к какой-то информации через веб-страницу, то скопировать нужные поля можно через вот такую тулзу:
github.com/...greasemonkey/greasemonkey
Конечно, не API, но и не руками копировать.
Смысл не в причинах, а в методах. Вот хорошо Ольшанским было озвучено:
www.facebook.com/...k/posts/10207814505704237
это не задача, а лишь один из моментов, который в JS решается не так, как можно было бы подумать. Я ставил себе задачу понять, почему с Object() оператор new работает не так. Особенно если учесть, что:
«Brendan Eich (создатель JavaScript) захотел, чтобы JavaScript был похож на традиционные ОО языки, такие как C++, Java, поэтому был добавлен оператор new. »
Какой был в этом смысл? Вы можете привести пример, где конструкция new Object() была бы оправдана?