一道有趣的JS面试题
来源:岁月联盟
时间:2012-07-26
var a = {
b : function() {
alert(this.c);
},
c : 1
};
a.b();
(a.b)();
(a.b = a.b)();
请问以上输出是什么?
当你搞定上面这道之后,请再看下面这道题:
var foo = {
bar: function () {
return this.baz;
},
baz: 1
};
(function () {
return typeof arguments[0]();
})(foo.bar);
A. "undefined"
B. "object"
C. "number"
D. "function"
第二道题出自http://www.nowamagic.net/javascript/js_PuzzleJavascriptQuiz.php
OK,如果你搞定了前两道题,看下下面这面原生的练习题(太臭美了,根本和上面几乎处处一致,):
var baz = 'laruence';www.2cto.com
var foo = {
bar: function () {
alert(this.baz);
},
baz: 'll'
};
(f = foo.bar)();
作者:bill200711022