js程序题目
1.写出下列输出
var a = 10; sayHi(); function sayHi(){ a = a + 10; console.info(a); return a; } console.log(a); console.log(sayHi() + 10);
2.写出下列输出
var a = 10; sayHi(); function sayHi(){ var a = a + 10; console.info(a); return a; } console.log(a); console.log(sayHi() + 10);
3.假设页面中有4个p标签
function init(){ var ps = document.getElementsByTagName("p"); for(var i = 0;i < ps.length;i++){ ps[i].onclick = function(){ console.log(i); } } } init();
4.写输出
var add = function(m) { var temp = function(n) { return add(m + n); } temp.toString = function() { return m.toString(2) } return temp; } console.info(add(3)(4)(5));
1.答案
20
20
30
40
2.答案
NaN
10
NaN
NaN
3.答案:点击任意一个返回都是4,因为i为全局变量。点击时,for循环已执行完毕。解决方案如下,或者使用es6语法let。
(function(n) { ps[n].onclick = function() { console.info(n); } })(i);
4.答案
1100