gpt4 book ai didi

javascript初始化一个没有new关键字的对象

转载 作者:行者123 更新时间:2023-11-30 12:57:41 25 4
gpt4 key购买 nike

有什么区别:

function Foo(){} var foo1 = Foo();

var foo2 = new Foo()

据我测试,foo1 什么也没给出。 typeof foo1 是未定义的,而使用 new 就可以了。

没有 new 关键字我得到未定义结果的原因是什么?

最佳答案

这是因为 function Foo(){} 隐式返回 undefined,即如果函数没有显式返回语句,编译器/VM 将隐式添加它.但是,当您使用 new 关键字时,您从构造函数实例化了一个对象。

参见 this answer有关 new 关键字作用的确切解释。

关于javascript初始化一个没有new关键字的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18464617/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com