console.log()和alert()区别

2018-8-21 00:52| 作者: admin| 查看: 1201| 评论: 0|来自: 蚂蚁部落

之所以要对比标题中的两个方法,是因为它们都可能会用在代码调试中。

比如想要看看一段代码会输出何种结果,可能会使用如下类似代码:

[JavaScript] 纯文本查看 复制代码
for(var index=0;index<10;index++){
    index=index+index*2;
}
console.log(index);

上面代码没有任何其他用意,仅仅是演示console.log()的打印功能。

谷歌控制台效果截图如下:

a:3:{s:3:\"pic\";s:43:\"portal/201808/21/005304cmcmrffffq3131f0.jpg\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

红框中的数字就是console.log方法打印结果。

如果替换成alert(),那么就会弹出一个警告框,更加醒目。

由此看起来好像这两个方法对于调试各有特点,但更为有经验的程序员通常使用console.log。

console.log特点:

(1).console.log方法不会中断代码的执行,而alert会:

代码实例如下:

[JavaScript] 纯文本查看 复制代码
for(var index=0;index<10;index++){
    console.log(index);
}

谷歌控制台代码运行截图如下:

a:3:{s:3:\"pic\";s:43:\"portal/201808/21/005346d326b23em12eb8b6.jpg\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

console.log不会中断代码的执行,这样非常便于逐行分析代码的运行情况。

而alert则每执行一次就弹出一个数字,甚至感觉比较烦,也难于细致的分析代码。

但也不能一概而论,可能某些时候,就是需要使用alert弹出一些东西。

二.console.log可以打印对象内部结构:

有时候需要分析一个对象的内部结构,代码实例如下:

[JavaScript] 纯文本查看 复制代码
let obj={
    webName:"蚂蚁部落",
    age:5
}
console.log(obj);

假设我们对obj对象内部结构毫不知情,那么可以使用console.log打印一下:

a:3:{s:3:\"pic\";s:43:\"portal/201808/21/005430dk2apwnzm4qwaz7v.jpg\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

但是alert则不会有这效果,因为它它会隐式的调用相应对象的toString()方法:

[JavaScript] 纯文本查看 复制代码
let obj={
    webName:"蚂蚁部落",
    age:5
}
alert(obj);

只会弹出下面这个东西:

a:3:{s:3:\"pic\";s:43:\"portal/201808/21/005505nyh3gjhhne16jhj1.jpg\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

1

鲜花

握手

雷人

路过

鸡蛋

刚表态过的朋友 (1 人)

最新评论

返回顶部