javascript中alert()与console.log()的区别


Posted in Javascript onAugust 26, 2015

[1]alert()

    [1.1]有阻塞作用,不点击确定,后续代码无法继续执行

    [1.2]alert()只能输出string,如果alert输出的是对象会自动调用toString()方法

        e.g. alert([1,2,3]);//'1,2,3'

    [1.3]alert不支持多个参数的写法,只能输出第一个值

        e.g. alert(1,2,3);//1

[2]console.log()

    [2.1]在打印台输出

    [2.2]可以打印任何类型的数据

        e.g. console.log([1,2,3]);//[1,2,3]

    [2.3]支持多个参数的写法

        e.g. console.log(1,2,3)// 1 2 3

alert 和 console.log 的结果不同?

score = [1,2,3];
sortedScore = [];
console.log(score);
sortedScore = score.sort(sortNumber)
console.log(sortedScore);
function sortNumber(a, b) {
  return b - a;
}

以上输出:
[3, 2, 1]
[3, 2, 1]

但是改成alert:

score = [1,2,3];
sortedScore = [];
alert(score);
sortedScore = score.sort(sortNumber)
alert(sortedScore);
function sortNumber(a, b) {
  return b - a;
}

以上输出:
1, 2, 3
3, 2, 1

为什么会这样?不应该都是:
1, 2, 3
3, 2, 1
吗?

经过一番研究发现是chrome实现的问题,对输出做了不太合适的优化,把console.log的实际执行推迟,相当于“惰性”求值,遇上数组、对象这样的引用类型就出上面的问题了。

https://bugs.webkit.org/show_bug.cgi?id=35801

这是一个很有历史的 BUG,上个月在开发版已经修复了。

Javascript 相关文章推荐
JQuery 动画卷页 返回顶部 动画特效(兼容Chrome)
Feb 15 Javascript
Javascript仿PHP $_GET获取URL中的参数
May 12 Javascript
javascript中拼接HTML字符串的最快、最好的方法
Jun 07 Javascript
Node.js的包详细介绍
Jan 14 Javascript
漫谈JS引擎的运行机制 你应该知道什么
Jun 15 Javascript
JS提示:Uncaught SyntaxError:Unexpected token ) 错误的解决方法
Aug 19 Javascript
初探JavaScript 面向对象(推荐)
Sep 03 Javascript
nginx+vue.js实现前后端分离的示例代码
Feb 12 Javascript
vue列表数据发生变化指令没有更新问题及解决方法
Jan 16 Javascript
jQuery单页面文字搜索插件jquery.fullsearch.js的使用方法
Feb 04 jQuery
解决vue项目input输入框双向绑定数据不实时生效问题
Aug 05 Javascript
html5调用摄像头截图功能
Jan 18 Javascript
JavaScript基本数据类型及值类型和引用类型
Aug 25 #Javascript
基于jQuery实现的QQ表情插件
Aug 25 #Javascript
js中javascript:void(0) 真正含义
Nov 05 #Javascript
js实现三张图(文)片一起切换的banner焦点图
Aug 25 #Javascript
js焦点文字滚动效果代码分享
Aug 25 #Javascript
JS实现灵巧的下拉导航效果代码
Aug 25 #Javascript
基于jQuery实现仿百度首页换肤背景图片切换代码
Aug 25 #Javascript
You might like
php 删除记录同时删除图片文件的实现代码
2010/05/12 PHP
PHP入门经历和学习过程分享
2014/04/11 PHP
php打乱数组二维数组多维数组的简单实例
2016/06/17 PHP
PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
2020/02/16 PHP
js 获取计算后的样式写法及注意事项
2013/02/25 Javascript
javascript中字符串的定义示例代码
2013/12/19 Javascript
当滚动条滚动到页面底部自动加载增加内容的js代码
2014/05/13 Javascript
Node.js中使用mongoskin操作mongoDB实例
2014/09/28 Javascript
JS+CSS实现可拖拽的漂亮圆角特效弹出层完整实例
2015/02/13 Javascript
javascript 判断两个日期之差的示例代码
2015/09/05 Javascript
jquery实现图片放大镜功能
2015/11/23 Javascript
性能优化之代码优化页面加载速度
2017/03/01 Javascript
promise和co搭配生成器函数方式解决js代码异步流程的比较
2018/05/25 Javascript
Vue中Quill富文本编辑器的使用教程
2018/09/21 Javascript
详解Angular5/Angular6项目如何添加热更新(HMR)功能
2018/10/10 Javascript
如何用webpack4.0撸单页/多页脚手架 (jquery, react, vue, typescript)
2019/06/18 jQuery
vue项目中使用AES实现密码加密解密(ECB和CBC两种模式)
2019/08/12 Javascript
vue+layui实现select动态加载后台数据的例子
2019/09/20 Javascript
javascript读取本地文件和目录方法详解
2020/08/06 Javascript
JS typeof fn === 'function' && fn()详解
2020/08/22 Javascript
python通过urllib2获取带有中文参数url内容的方法
2015/03/13 Python
Python实现国外赌场热门游戏Craps(双骰子)
2015/03/31 Python
21行Python代码实现拼写检查器
2016/01/25 Python
python利用标准库如何获取本地IP示例详解
2017/11/01 Python
Python实现按特定格式对文件进行读写的方法示例
2017/11/30 Python
Python中单、双下划线的区别总结
2017/12/01 Python
python简单区块链模拟详解
2019/07/03 Python
Python实现验证码识别
2020/06/15 Python
python实现学生成绩测评系统
2020/06/22 Python
Python通过类的组合模拟街道红绿灯
2020/09/16 Python
python中类与对象之间的关系详解
2020/12/16 Python
HTML5实现视频弹幕功能
2019/08/09 HTML / CSS
VLAN和VPN有什么区别?分别实现在OSI的第几层?
2014/12/23 面试题
教师绩效工资方案
2014/02/01 职场文书
销售督导岗位职责
2015/04/10 职场文书
导游词之阆中古城
2019/12/23 职场文书