@xcho1996

В чем различие между?

В чем различие между: function Person(){}, var person = Person(), и var person = new Person()?
  • Вопрос задан
  • 1780 просмотров
Решения вопроса 1
petermzg
@petermzg
Самый лучший программист
function Person(){} - Вы обьявляете функцию с именем Person.
var person = Person() - Вы вызываете функцию Person и результат сохраняете в переменную person
var person = new Person()- Вы создаете новый обьект использую функцию-конструктор Person
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
27cm
@27cm
TODO: Написать статус
Комментировать
@lem_prod
function superFunc (arg) {};

function - запуск конструктора функции
superFunc - имя функции
() - переменные-аргументы
{} - контекст выполнения
получается сделали функцию с именем, аргументами и контекстом
при этом вызов superFunc() идет по имени функции, хочу обратить внимание, что скобки по время вызова, это оператор вызова.

var super = superFunc() - читаем справа налево, вызови функцию с именем superFunc и помести результат в переменную super.

var super = new superFunc() - читаем справа налево, вызови функцию с именем superFunc как конструктор, создай с него объект который будет помещен в переменную super. Тут стоит обратит внимание, что функция нечего не возвращает, а создает объект по конструктору.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы