看看这些题目你会多少?
原文链接 https://bubkoo.github.io/2014/03/20/some-javascript-quiz-from-perfectionkills/
注:以下为加速网络访问所做的原文缓存,经过重新格式化,可能存在格式方面的问题,或偶有遗漏信息,请以原文为准。
最近在 perfectionkills 上看到几道 JavaScript 题目,这里拿来分享一下,下面列举出来了题目,你可以在这里做题,答案解析可以到这里找到。
<!--more-->
.answers { margin: 10px; } .answers li{ list-style:none; line-height: 1.4; }
1.
(function(){
return typeof arguments;
})();
"object" "array" "arguments" "undefined"
2.
var f = function g(){ return 23; };
typeof g();
"number" "undefined" "function" Error
3.
(function(x){
delete x;
return x;
})(1);
1 null undefined Error
4.
var y = 1, x = y = typeof x;
x;
1 "number" undefined "undefined"
5.
(function f(f){
return typeof f();
})(function(){ return 1; });
"number" "undefined" "function" Error
6.
var foo = {
bar: function() { return this.baz; },
baz: 1
};
(function(){
return typeof arguments[0]();
})(foo.bar);
"undefined" "object" "number" "function"
7.
var foo = {
bar: function(){ return this.baz; },
baz: 1
}
typeof (f = foo.bar)();
"undefined" "object" "number" "function"
8.
var f = (function f(){ return "1"; }, function g(){ return 2; })();
typeof f;
"string" "number" "function" "undefined"
9.
var x = 1;
if (function f(){}) {
x += typeof f;
}
x;
1 "1function" "1undefined" NaN
10.
var x = [typeof x, typeof y][1];
typeof typeof x;
"number" "string" "undefined" "object"
11.
(function(foo){
return typeof foo.bar;
})({ foo: { bar: 1 } });
"undefined" "object" "number" Error
12.
(function f(){
function f(){ return 1; }
return f();
function f(){ return 2; }
})();
1 2 Error (e.g. "Too much recursion") undefined
13.
function f(){ return f; }
new f() instanceof f;
true false
14.
with (function(x, undefined){})
length;
1 2 undefined Error
点击下面按钮提交您的答案 试试手气
(function () { function byId(id) { return document.getElementById(id); }
byId('submitter').onclick = function () {
var wrongAnswers = [ ];
if (!byId('answer-1-1').checked) {
wrongAnswers.push(1);
}
if (!byId('answer-2-4').checked) {
wrongAnswers.push(2);
}
if (!byId('answer-3-1').checked) {
wrongAnswers.push(3);
}
if (!byId('answer-4-4').checked) {
wrongAnswers.push(4);
}
if (!byId('answer-5-1').checked) {
wrongAnswers.push(5);
}
if (!byId('answer-6-1').checked) {
wrongAnswers.push(6);
}
if (!byId('answer-7-1').checked) {
wrongAnswers.push(7);
}
if (!byId('answer-8-2').checked) {
wrongAnswers.push(8);
}
if (!byId('answer-9-3').checked) {
wrongAnswers.push(9);
}
if (!byId('answer-10-2').checked) {
wrongAnswers.push(10);
}
if (!byId('answer-11-1').checked) {
wrongAnswers.push(11);
}
if (!byId('answer-12-2').checked) {
wrongAnswers.push(12);
}
if (!byId('answer-13-1').checked) {
wrongAnswers.push(13);
}
if (!byId('answer-14-2').checked) {
wrongAnswers.push(14);
}
var message = (wrongAnswers.length === 14) ? '你全部答错了' : '你答错了 <strong>' + wrongAnswers.length + ' </strong>题';
message += (wrongAnswers.length === 14) ? '' : '<br/>答错的题目:' + wrongAnswers.join(' , ');
document.getElementById('quiz-result').innerHTML = message;
};
})();