alert():
有阻塞作用,不点击确定,后续代码无法继续执行
-
alert()只能输出string,如果alert输出的是对象会自动调用toString()方法
e.g. alert([a,b,c]);//a,b,c
-
alert不支持多个参数的写法,只能输出第一个值
e.g. alert(1,2,3);//1
console.log():
在打印台输出
-
可以打印任何类型的数据
e.g. console.log([a,b,c]);//[a,b,c]
-
支持多个参数的写法
e.g. console.log(1,2,3)// 1 2 3
关于原型链中的toString()输出问题:
let e1= {
n : 1,
valueOf : function(){
return this.n + 4
},
toString : function(){
return this.valueOf() + 5
}
}
console.log('e1==0 : ', e1==0)
console.log('+e1 : ', +e1)
console.log('e1 : ', e1)
console.log('e1.toString() : ', e1.toString())
alert(e1) //10
运行结果:
原因:console.log()可以打印任何类型的数据。而 alert() 只能输出string。如果alert输出是对象会自动调用 toString() 方法。如果想 console.log() 输出的与alert相同,需要调用 toString() 。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。