本篇文章是js基础练习题第三天的答案及解析部分,纯题目部分请移步js基础练习题 第3天
正文
1.
1 | var exerOne = false; |
exerOne 的值为______________。答案:true
注意第2行中的=为赋值操作
2.
1 | var weekday = new Date().getDay(); |
weekday 的值是____。答案:unknown
switch循环中的case语句后若不添加break,则每个case都会执行,返回的内容取决于最后一个语句
3.给定一个变量,如何检测它是否为
NaN ?答案:NaN是唯一一个自身与自身不相等的值,利用if(name !== name)如果结果为真,则证明该值为NaN。
利用isNaN()函数,可以更准确的检测。
关于isNaN()和Number.isNaN()的区别,点击这里
4.
1 | var array=[]; |
array 的结果为______________。答案:[0, 0, 1, 3, 4, 1, 0, 1, 3, 4]
break语句是退出整个循环,而continue语句是退出当前循环而进入下一次循环
5.
1 | var foo = function bar() { |
typeof(foo) = ______________;
typeof(foo()) = ______________;
typeof(bar) = ______________;
typeof(bar()) = ______________。
答案:function、number、undefined、报错(ReferenceError)
在此题中,foo才是函数名。执行typeof(foo())得到的是foo函数的返回值,如果没有返回值,则为undefined。
6.
1 | var a, b; |
答案:5、5、undefined、5
该题目考查了js变量定义及作用域的概念。在立即执行函数内部定义var a = b = 5;实际上相当于执行
1 | b = 5; |
故在函数外部的变量b也同步修改了,而函数外部的变量a未被修改
7.
1 | var array = new Array(0x17); |
Number(array); 的结果是_______,array.length; 的值是_______。答案:NaN、23
js会根据在Array构造函数中传入的参数值n确定数组的初始长度为n,0x17为十六进制,转换为十进制为23。对数组调用Number()方法,会先将该数组转为会string类型,再转换为number类型。
说明
- 题目中出现的JS指的是采用ECMAScript 2015及之后标准的JavaScript
答案中,若有错误和需完善的地方,可在下方留言反馈哈~~
查看纯习题版,请点击js基础练习题 第3天

