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 相关文章推荐
深入理解JavaScript作用域和作用域链
Oct 21 Javascript
动态添加option及createElement使用示例
Jan 26 Javascript
使用js判断TextBox控件值改变然后出发事件
Mar 07 Javascript
jQuery异步验证用户名是否存在示例代码
May 21 Javascript
JavaScript设计模式之外观模式介绍
Dec 28 Javascript
jQuery实现跨域
Feb 03 Javascript
javascript中函数作为参数调用的方法
Feb 09 Javascript
Js+php实现异步拖拽上传文件
Jun 23 Javascript
jquery移动点击的项目到列表最顶端的方法
Jun 24 Javascript
动态加载js文件简单示例
Apr 21 Javascript
JavaScript关于提高网站性能的几点建议(一)
Jul 24 Javascript
解决bootstrap模态框数据缓存的问题方法
Aug 10 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 XPath对XML文件查找及修改实现代码
2011/07/27 PHP
在Windows XP下安装Apache+MySQL+PHP环境
2015/02/22 PHP
PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】
2018/06/13 PHP
基于JQuery实现的类似购物商城的购物车
2011/12/06 Javascript
利用NodeJS和PhantomJS抓取网站页面信息以及网站截图
2013/11/18 NodeJs
JavaScript读二进制文件并用ajax传输二进制流的方法
2016/07/18 Javascript
js表单元素checked、radio被选中的几种方法(详解)
2016/08/22 Javascript
PhotoSwipe异步动态加载图片方法
2016/08/25 Javascript
JS简单实现移动端日历功能示例
2016/12/28 Javascript
js通过指定下标或指定元素进行删除数组的实例
2017/01/12 Javascript
jQuery使用方法
2017/02/04 Javascript
JavaScript实现移动端页面按手机屏幕分辨率自动缩放的最强代码
2017/08/18 Javascript
详解如何用模块化的方式写vuejs
2017/12/16 Javascript
vue router 传参获取不到的解决方式
2019/11/13 Javascript
AutoJs实现刷宝短视频的思路详解
2020/05/22 Javascript
在vue中实现禁止屏幕滚动,禁止屏幕滑动
2020/07/22 Javascript
JS如何实现封装列表右滑动删除收藏按钮
2020/07/23 Javascript
vue离开当前页面触发的函数代码
2020/09/01 Javascript
Python中使用logging模块打印log日志详解
2015/04/05 Python
Python实现字符串格式化的方法小结
2017/02/20 Python
深入理解Python中的内置常量
2017/05/20 Python
对Python3中的print函数以及与python2的对比分析
2018/05/02 Python
python实现文本进度条 程序进度条 加载进度条 单行刷新功能
2019/07/03 Python
YUV转为jpg图像的实现
2019/12/09 Python
关于tensorflow的几种参数初始化方法小结
2020/01/04 Python
Python进程的通信Queue、Pipe实例分析
2020/03/30 Python
Python并发请求下限制QPS(每秒查询率)的实现代码
2020/06/05 Python
Python 为什么推荐蛇形命名法原因浅析
2020/06/18 Python
Python自带的IDE在哪里
2020/07/01 Python
搭建pypi私有仓库实现过程详解
2020/11/25 Python
德国滑雪和户外用品网上商店:XSPO
2019/10/30 全球购物
解除劳动合同协议书
2014/09/17 职场文书
领导干部个人对照检查材料(群众路线)
2014/09/26 职场文书
2014年妇女工作总结
2014/12/06 职场文书
2015年民兵整组工作总结
2015/07/24 职场文书
phpQuery解析HTML乱码问题(补充官网未列出的乱码解决方案)
2021/04/01 PHP