Как исследовать javascript как мою первую ссылку на все программирование, но поскольку я не профессионал, не могу понять много чего. Так что было бы так высоко оценено, если кто-то может объяснить, что на самом деле происходит за сценой.«новый» оператор перед объявлением функции
В теге body я объявил две функции одной с «новой» и другой без.
- новая функция SayHi() {Alert ('привет')}
- функция SayHello() {Alert ('привет')}
Таким образом, первая функция вызывается без использования (), поэтому я вижу «привет», пока документ загружается, так как я его правильно понимаю. Но чтобы увидеть «привет», я должен использовать что-то вроде sayHello.call() где-то в коде.
Я предполагаю, что понимаю основную цель «нового» оператора как экземпляра объекта создания, более того, даже можно предположить, что существует небольшое различие между объявляющими экземплярами объекта функции с или без оператора «новый».
Но что на самом деле происходит, чтобы документ выполнял функцию с помощью «нового» оператора, пока это определение, а другое просто уходит где-то в памяти?
На самом деле, использование [new' + function expression] (http://stackoverflow.com/q/10406552/1048572) никогда не под рукой. – Bergi
Я согласен, но применяются типичные применения IIFE. И помимо нескольких побочных эффектов (каждый из которых обеспечивает разные побочные эффекты), они достигают той же функциональности, поэтому я упомянул, что на самом деле происходит IIFE, который обычно выполняется с помощью '(function() {/ * реализация * /}()); «Но я полностью понимаю, что вы говорите и соглашаетесь. – Norguard
Сразу после года мне удалось оценить ваше время, потраченное на расширенный и полный ответ. Спасибо))) – vaseech