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中dom操作和事件的实例学习 下拉框应用
Dec 01 Javascript
js function定义函数的几种不错方法
Feb 27 Javascript
javascript中var的重要性分析
Feb 11 Javascript
浅谈JavaScript的事件
Feb 27 Javascript
js实现类似jquery里animate动画效果的方法
Apr 10 Javascript
AngularJS中的过滤器使用详解
Jun 16 Javascript
JS基于正则表达式的替换操作(replace)用法示例
Apr 28 Javascript
VUE使用vuex解决模块间传值问题的方法
Jun 01 Javascript
JS实现中英文混合文字溢出友好截取功能
Aug 06 Javascript
微信小程序入门之广告条实现方法示例
Dec 05 Javascript
JavaScript之解构赋值的理解
Jan 30 Javascript
使用JavaScript和MQTT开发物联网应用示例解析
Aug 07 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
SONY ICF-F10中波修复记
2021/03/02 无线电
Search Engine Friendly的URL设计
2006/10/09 PHP
简单谈谈PHP面向对象之标识对象
2017/06/27 PHP
JavaScript与C# Windows应用程序交互方法
2007/06/29 Javascript
ImageFlow可鼠标控制图片滚动
2008/01/30 Javascript
jQuery 行背景颜色的交替显示(隔行变色)实现代码
2009/12/13 Javascript
jQuery在IE下使用未闭合的xml代码创建元素时的Bug介绍
2012/01/10 Javascript
JS实现图片平面旋转的方法
2016/03/01 Javascript
Node.js Streams文件读写操作详解
2016/07/04 Javascript
深入理解javascript作用域第二篇之词法作用域和动态作用域
2016/07/24 Javascript
Javascript 动态改变imput type属性
2016/11/01 Javascript
jQuery弹出层插件popShow(改进版)用法示例
2017/01/23 Javascript
vue.js绑定事件监听器示例【基于v-on事件绑定】
2018/07/07 Javascript
详解从Vue-router到html5的pushState
2018/07/21 Javascript
js实现搜索栏效果
2018/11/16 Javascript
如何利用ES6进行Promise封装总结
2019/02/11 Javascript
详解Vue.js和layui日期控件冲突问题解决办法
2019/07/25 Javascript
微信小程序 行的删除和增加操作实现详解
2019/09/29 Javascript
[01:11:11]Alliance vs RNG 2019国际邀请赛淘汰赛 败者组BO1 8.20.mp4
2020/07/19 DOTA
Python 正则表达式匹配字符串中的http链接方法
2018/12/25 Python
Python File(文件) 方法整理
2019/02/18 Python
python2使用bs4爬取腾讯社招过程解析
2019/08/14 Python
python 通过邮件控制实现远程控制电脑操作
2020/03/16 Python
基于Python正确读取资源文件
2020/09/14 Python
如何在网站上添加谷歌定位信息
2016/04/16 HTML / CSS
Nixon手表英国官网:美国尼克松手表品牌
2020/02/10 全球购物
销售工作岗位职责
2013/12/24 职场文书
《闻一多先生的说和做》教学反思
2014/04/28 职场文书
2014年中秋节活动总结
2014/08/29 职场文书
党员自我评议个人对照检查材料
2014/09/16 职场文书
运动会400米加油稿(8篇)
2014/09/22 职场文书
县政府班子个人对照检查材料
2014/10/05 职场文书
艺术节开幕词
2015/01/28 职场文书
背起爸爸上学观后感
2015/06/08 职场文书
课题研究阶段性总结
2015/08/13 职场文书
如何使用 resize 实现图片切换预览功能
2021/08/23 HTML / CSS