1.下列代码输出的值html
console.log(100['toString']['length']); // 1
console.log(100['toString']) // 输出为函数,由于toString是方法,没有小括号就是没有调用,因此返回的是函数自己
参考连接:http://www.ecma-international.org/ecma-262/5.1/#sec-15.7.4.2数组
2.代码输出为闭包
var x=1; function fn(n){n=n+1} y=fn(x); console.log(y); // 输出为undefined
3.代码输出为函数
function fn1(){ var a=0; function fn2(){ ++a; alert(a); } return fn2; } fn1()(); // 弹出1 var newFn=new fn1(); newFn(); // 弹出1 newFn(); // 弹出2
参考++a和++a的区别code
4.代码输出为htm
var arr=[1,2]; var arr2=arr.concat(); arr2.push(arr.splice(1,0)); console.log(arr); // [1,2] console.log(arr2); // [1,2,[]]
var arr = [1, 2]; var arr2 = arr.concat(); console.log(arr); // 输出为[1,2] console.log(arr2); // 输出为[1,2]
var arr = [1, 2]; var arr2 = arr.concat([3,4]); console.log(arr); // 输出为[1,2] console.log(arr2); // 输出为[1,2,3,4]
var arr = [1, 2]; var arr2 = arr.concat([3,4,[5,6]]); console.log(arr); // 输出为[1,2] console.log(arr2); // 输出为[1,2,3,4,[5,6]]
var arr = [1, 2]; var arr2 = arr.concat({name:'bonly'}); console.log(arr); // 输出为[1,2] console.log(arr2); // 输出为[1,2,{name:'bonly'}]
var arr = [1, 2]; console.log(arr); // 输出[1,2] console.log(arr.splice()); // 输出为[] arr.splice(); console.log(arr); // 输出[1,2]
var arr = [1, 2]; console.log(arr); // 输出[1,2] console.log(arr.splice(1)); // 输出为[2] arr.splice(1); console.log(arr); // 输出[1]
var arr = [1, 2]; console.log(arr); // 输出[1,2] console.log(arr.splice(1)); // 输出为[2] arr.splice(1); console.log(arr); // 输出[1]
var arr = [1, 2,3]; console.log(arr.splice(1,1)); // 输出[2] console.log(arr); // 输出[1,3]
var arr = [1, 2,3]; console.log(arr.splice(1,1,4,5)); // 输出[2] console.log(arr); // 输出[1,4,5,3]
var arr = [1, 2,3]; console.log(arr.splice(1,0,4,5)); // 输出[] console.log(arr); // 输出[1,4,5,2,3]
参考菜鸟:http://www.runoob.com/jsref/jsref-splice.html对象
5.代码输出为blog
console.log((!+[]+[]+!+[]).length); // 输出8
console.log((!+[]+[]+!+[])); // 输出为truetrue console.log((!+[]+[])); // 输出为true console.log((!+[])); // true console.log((+[])); // 0
6.下列代码输出字符串
console.log((3<5,4>6)); // false console.log((4>6,3<5)); // true