在segmentfault上看见一道比较有意思的JavaScript题,如下
javascript 代码
function Foo() {
getName = function () {
console.log('1');
};
return this;
}
Foo.getName = function () {
console.log('2');
};
Foo.prototype.getName = function () {
console.log('3');
};
var getName = function () {
console.log('4');
};
function getName() {
console.log(5);
}
Foo.getName();
getName();
Foo().getName();
getName();
new Foo.getName();
new Foo().getName();
new new Foo().getName();
问浏览器环境下,输出结果是多少?
可以好好思考一下,下面给答案
答案: 2 4 1 1 2 3 3
具体详细解析见
答案解析