你不知道的JavaScript--值得你挑战的JavaScript面试题(45题)
2016-09-26 17:09
561 查看
1,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
2,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
3,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
4,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
5,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
6,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
7,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
11
8,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
11
12
13
9,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
10,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
11,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
12,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
13,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
14,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
16,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
17,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
18,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
11
19,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
20,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
11
21,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
22,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
23,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
24,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
25,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
26,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
27,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
28,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
29,以下表达式的运行结果是:
1
2
3
4
5
6
7
30,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
31,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
32,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
33,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
34,以下表达式的运行结果是:
1
2
3
4
5
6
7
35,以下表达式的运行结果是:
1
2
3
4
5
6
36,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
37,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
38,以下表达式的运行结果是:
1
2
3
4
5
6
7
39,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
40,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
41,以下表达式的运行结果是:
1
2
3
4
5
6
42,以下表达式的运行结果是:
1
2
3
4
5
6
7
8
9
10
11
43,以下表达式的运行结果是:
1
2
3
4
5
6
7
44,以下表达式的运行结果是:
1
2
3
4
5
6
7
45,以下表达式的运行结果是:
转载 http://blog.csdn.net/i10630226/article/details/49765737[/code]
["1","2","3"].map(parseInt) A.["1","2","3"] B.[1,2,3] C.[0,1,2] D.其他
1
2
3
4
5
6
7
8
9
2,以下表达式的运行结果是:
[typeof null, null instanceof Object] A.["object",false] B.[null,false] C.["object",true] D.其他
1
2
3
4
5
6
7
8
9
3,以下表达式的运行结果是:
[[3,2,1].reduce(Math.pow),[].reduce(Math.pow)] A.报错 B.[9,0] C.[9,NaN] D.[9,undefined]
1
2
3
4
5
6
7
8
9
4,以下表达式的运行结果是:
var val = 'value'; console.info('Value id '+(val === 'value')?'Something':'Nothing'); A.Something B.Nothing C.NaN D.其他
1
2
3
4
5
6
7
8
9
10
5,以下表达式的运行结果是:
var name = 'World'; (function(){ if(typeof name === 'undefined'){ var name = "Jack"; console.info('Goodbye '+ name); }else{ console.info('Hello ' + name); } })(); A.Goodbye Jack B.Hello Jack C.Goodbye undefined D.Hello undefined
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
6,以下表达式的运行结果是:
var END = Math.pow(2,53); var START = END -100; var count = 0; for(var i = START ; i <= END ;i++){ count ++; } console.log(count); A.0 B.100 C.101 D.其他
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
7,以下表达式的运行结果是:
var arr = [0,1,2]; arr[10] = 10; arr.filter(function(x){return x === undefined}); A.[undefined x 7] B.[0,1,2,10] C.[] D.[undefined]
1
2
3
4
5
6
7
8
9
10
11
8,以下表达式的运行结果是:
var two = 0.2; var one = 0.1; var eight = 0.8; var six = 0.6; [two -one == one,eight- six == two]; A.[true,true] B.[false,false] C.[true,false] D.其他
1
2
3
4
5
6
7
8
9
10
11
12
13
9,以下表达式的运行结果是:
function showCase(value){ switch(value){ case 'A': console.info('Case A'); break; case 'B': console.info('Case B'); break; case undefined : console.info('undefined'); break; default: console.info('Do not know!'); } } showCase(new String('A')); A.Case A B.Case B C.Do not know D.undefined
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
10,以下表达式的运行结果是:
function showCase(value){ switch(value){ case 'A': console.info('Case A'); break; case 'B': console.info('Case B'); break; case undefined : console.info('undefined'); break; default: console.info('Do not know!'); } } showCase(String('A')); A.Case A B.Case B C.Do not know D.undefined
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
11,以下表达式的运行结果是:
function isOdd(num){ return num % 2 == 1; } function isEven(num){ return num % 2 == 0; } function isSane(num){ return isEven(num)||isOdd(num); } var values = [7,4,'13',-9,Infinity]; values.map(isSane); A.[true, true, true, true, true] B.[true, true, true, true, false] C.[true, true, true, false, false] D.[true, true, false, false, false]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
12,以下表达式的运行结果是:
[parseInt(3,8),parseInt(3,2),parseInt(3,0)] A.[3,3,3] B.[3,3,NaN] C.[3,NaN,NaN] D.其他
1
2
3
4
5
6
7
8
9
13,以下表达式的运行结果是:
Array.isArray(Array.prototype) A.true B.false C.报错 D.其他
1
2
3
4
5
6
7
8
9
14,以下表达式的运行结果是:
var a = [0]; if([0]){ console.info(a == true); }else{ console.info("else"); } A.true B.false C."else" D.其他
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15,以下表达式的运行结果是:
[]==[] A.true B.false C.报错 D.其他
1
2
3
4
5
6
7
8
9
16,以下表达式的运行结果是:
[('5'+3),('5'-3)] A.["53",2] B.[8,2] C.报错 D.其他
1
2
3
4
5
6
7
8
9
17,以下表达式的运行结果是:
1+-+++-+1 A.true B.false C.报错 D.其他
1
2
3
4
5
6
7
8
9
18,以下表达式的运行结果是:
var arr = Array(3); arr[0] = 2 arr.map(function(elem){return '1';}); A.[2,1,1] B.["1","1","1"] C.[2,"1","1"] D.其他
1
2
3
4
5
6
7
8
9
10
11
19,以下表达式的运行结果是:
function sidEffecting(arr){ arr[0] = arr[2]; } function bar(a,b,c){ c = 10; sidEffecting(arguments); return a+b+c; } bar(1,1,1); A.3 B.12 C.报错 D.其他
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
20,以下表达式的运行结果是:
var a = 111111111111111110000; b = 1111; console.info(a+b); A.111111111111111111111 B.111111111111111110000 C.NaN D.Infinity
1
2
3
4
5
6
7
8
9
10
11
21,以下表达式的运行结果是:
ar x = [].reverse; x(); A.[] B.undefined C.报错 D.window
1
2
3
4
5
6
7
8
9
10
22,以下表达式的运行结果是:
Number.MIN_VALUE>0 A.true B.false C.报错 D.其他
1
2
3
4
5
6
7
8
9
23,以下表达式的运行结果是:
[1<2<3,3<2<1] A.[true,true] B.[true,false] C.报错 D.其他
1
2
3
4
5
6
7
8
9
24,以下表达式的运行结果是:
2 == [[[2]]] A.true B.false C.undefined D.其他
1
2
3
4
5
6
7
8
9
25,以下表达式的运行结果是:
[3.toString(),3..toString(),3...toString()] A.["3",error,error] B.["3","3.0",error] C.[error,"3",error] D.其他
1
2
3
4
5
6
7
8
9
26,以下表达式的运行结果是:
(function(){ var x1 =y1 =1; })(); console.info(y1); console.info(x1); A.1,1 B.error,error C.1,error D.其他
1
2
3
4
5
6
7
8
9
10
11
12
13
14
27,以下表达式的运行结果是:
var a = Function.length, b = new Function().length; a === b A.true B.false C.error D.other
1
2
3
4
5
6
7
8
28,以下表达式的运行结果是:
var a = Date(0); var b = new Date(0); var c = new Date(); [a === b, b === c, a === c] A.[true, true, true] B.[false, false, false] C.[false, true, false] D.[true, false, false]
1
2
3
4
5
6
7
8
9
29,以下表达式的运行结果是:
var min = Math.min(), max = Math.max() min < max A.true B.false C.error D.other
1
2
3
4
5
6
7
30,以下表达式的运行结果是:
function captureOne(re, str) { var match = re.exec(str); return match && match[1]; } var numRe = /num=(\d+)/ig, wordRe = /word=(\w+)/i, a1 = captureOne(numRe, "num=1"), a2 = captureOne(wordRe, "word=1"), a3 = captureOne(numRe, "NUM=2"), a4 = captureOne(wordRe, "WORD=2"); [a1 === a2, a3 === a4] A.[true, true] B.[false, false] C.[true, false] D.[false, true]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
31,以下表达式的运行结果是:
var a = new Date("2014-03-19"), b = new Date(2014, 03, 19); [a.getDay() === b.getDay(), a.getMonth() === b.getMonth()] A.[true, true] B.[true, false] C.[false, true] D.[false, false]
1
2
3
4
5
6
7
8
32,以下表达式的运行结果是:
if ('http://giftwrapped.com/picture.jpg'.match('.gif')) { 'a gif file' } else { 'not a gif file' } A.'a gif file' B.'not a gif file' C.error D.other
1
2
3
4
5
6
7
8
9
10
33,以下表达式的运行结果是:
function foo(a) { var a; return a; } function bar(a) { var a = 'bye'; return a; } [foo('hello'), bar('hello')] A.["hello", "hello"] B.["hello", "bye"] C.["bye", "bye"] D.other
1
2
3
4
5
6
7
8
9
10
11
12
13
14
34,以下表达式的运行结果是:
var a = {class: "Animal", name: 'Fido'}; a.class A."Animal" B.Object C.an error D.other
1
2
3
4
5
6
7
35,以下表达式的运行结果是:
var a = new Date("epoch") A.Thu Jan 01 1970 01:00:00 GMT+0100 (CET) B.current time C.error D.other
1
2
3
4
5
6
36,以下表达式的运行结果是:
var a = /123/, b = /123/; a == b a === b A.true, true B.true, false C.false, false D.other
1
2
3
4
5
6
7
8
9
37,以下表达式的运行结果是:
What is the result of this expression? (or multiple ones) var a = [1, 2, 3], b = [1, 2, 3], c = [1, 2, 4] a == b a === b a > c a < c A.false, false, false, true B.false, false, false, false C.true, true, false, true D.other
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
38,以下表达式的运行结果是:
var a = {}, b = Object.prototype; [a.prototype === b, Object.getPrototypeOf(a) === b] A.[false, true] B.[true, true] C.[false, false] D.other
1
2
3
4
5
6
7
39,以下表达式的运行结果是:
function f() {} var a = f.prototype, b = Object.getPrototypeOf(f); a === b A.true B.false C.null D.other
1
2
3
4
5
6
7
8
40,以下表达式的运行结果是:
function foo() { } var oldName = foo.name; foo.name = "bar"; [oldName, foo.name] A.error B.["", ""] C.["foo", "foo"] D.["foo", "bar"]
1
2
3
4
5
6
7
8
9
41,以下表达式的运行结果是:
"1 2 3".replace(/\d/g, parseInt) A."1 2 3" B."0 1 2" C."NaN 2 3" D."1 NaN 3"
1
2
3
4
5
6
42,以下表达式的运行结果是:
function f() {} var parent = Object.getPrototypeOf(f); f.name // ? parent.name // ? typeof eval(f.name) // ? typeof eval(parent.name) // ? A."f", "Empty", "function", "function" B."f", undefined, "function", error C."f", "Empty", "function", error D.other
1
2
3
4
5
6
7
8
9
10
11
43,以下表达式的运行结果是:
var lowerCaseOnly = /^[a-z]+$/; [lowerCaseOnly.test(null), lowerCaseOnly.test()] A.[true, false] B.error C.[true, true] D.[false, true]
1
2
3
4
5
6
7
44,以下表达式的运行结果是:
var lowerCaseOnly = /^[a-z]+$/; [lowerCaseOnly.test(null), lowerCaseOnly.test()] A.[true, false] B.error C.[true, true] D.[false, true]
1
2
3
4
5
6
7
45,以下表达式的运行结果是:
[,,,].join(", ") A.", , , " B."undefined, undefined, undefined, undefined" C.", , " D.""
转载 http://blog.csdn.net/i10630226/article/details/49765737[/code]
相关文章推荐
- 你不知道的JavaScript--Item31 值得你挑战的JavaScript面试题(45题)
- 你不知道的JavaScript--Item31 值得你挑战的JavaScript面试题(45题)
- JavaScript学习--Item31 值得你挑战的JavaScript面试题(45题)
- 个人收集javascript面试题,你值得拥有。
- 程序员面试题精选(45):求给定整数其二进制形式含1的个数
- IBM 经典销售面试题:营销理念的终极挑战
- 值得收藏的一些HTML、JavaScript、ASP代码
- 微软面试题公开 “挑战”就是秘密武器
- 不知道有没有必要写一个Javascript的算法库……
- 值得收藏的一些HTML、JavaScript、ASP代码
- IBM 经典销售面试题:营销理念的终极挑战
- javascript实现上传图片前的预览(TX的面试题)
- 今天开始看JavaScript: The Definitive Guide, 5th Edition,英文版的感觉真好,中文版不知道时候出
- IBM 经典销售面试题:营销理念的终极挑战
- 你不知道的 JavaScript - “this”
- IBM 经典销售面试题:营销理念的终极挑战
- IBM经典面试题:挑战你的逻辑分析能力
- [绝对挑战]IBM面试题(附答案)
- javascript实现上传图片前的预览(TX的面试题)
- 值得收藏的一些HTML,JavaScript,ASP代码