newJavaScript中的关键字在第一次遇到时会非常混乱,因为人们倾向于认为JavaScript不是面向对象的编程语言.
除了this使用new关键字调用构造函数之外,Javascript中的return语句可以返回一个值的具体情况是什么?
例:
function Foo () {
return something;
}
var foo = new Foo ();
Run Code Online (Sandbox Code Playgroud)
如果我没有弄错,if something是非函数原语,this将被返回.否则something返回.它是否正确?
IOW,可以something采取什么样的价值观(new Foo () instanceof Foo) === false?
是否可以测试变量以查看它是否是原始变量?
我已经看到很多关于测试变量的问题,看看它是否是一个对象,而不是测试一个原语.
这个问题是学术性的,我实际上并不需要从我自己的代码中执行此测试.我只是想更深入地了解JavaScript.
如果我在构造函数中返回一些值或对象,var会得到什么?
function MyConstroctor()
{
//what in case when return 5;
//what in case when return someObject;
}
var n = new MyConstroctor();
Run Code Online (Sandbox Code Playgroud)
在这两种情况下会得到什么?
实际上它是一个测验问题,答案是什么?
从自定义对象构造函数返回什么?
a)新实例化的对象
b)未定义 - 构造函数不返回值
c)返回语句
是什么d)返回语句是什么; 如果没有return语句,则新实例化的对象