请问console.log([]==![]);的输出结果,原理是什么?

问题描述

请问console.log([]==![]);的输出结果,原理是什么?求指点

解决方案

前面的回复写错了,又不能修改,为免误导观众,发个更正版:1. []单独用在==表达式中时,会隐含转型为""(空字符串) 2. 一个不是null或者undefined的对象(包括[])用在布尔表达式中,会被作为true处理。因此![]的结果是false。 所以[]==![]等价于 ""==false,而空字符串在布尔表达式中作为false处理。因此最终结果是true。=====================================P.S. 至于为什么""会看成是false,而[]则看成是true。为什么[]要隐含转型成空字符串而不是其他东西。javascript高手的经典解释是:“它就是这样,你爱用不用”
解决方案二:
1. []单独用在==表达式中时,会隐含转型为""(空字符串)2. 一个不是null或者undefined的对象(包括[])用在布尔表达式中,会被作为true处理。因此![]的结果是true。所以 []==![] 等价于 ""==true,而空字符串是一个非空对象,在==表达式中作为true处理,因此最终结果是true

时间: 2024-09-23 19:52:12

请问console.log([]==![]);的输出结果,原理是什么?的相关文章

JS中捕获console.log()输出的方法

  我们知道console.log()可以将信息输出到debugger中供开发者查看.但如果我们想要在JS中获取console.log()的输出结果呢?其实不难,先将原本的console.log保存起来,然后替换成另外一个实现即可.代码如下: 1 2 3 4 5 6 7 8 var lastLog; console.oldLog = console.log; console.log = function(str) { console.oldLog(str); lastLog = str; } c

JS中捕获console.log()输出的方法_javascript技巧

本文实例讲述了JS中捕获console.log()输出的方法.分享给大家供大家参考.具体分析如下: 我们知道console.log()可以将信息输出到debugger中供开发者查看.但如果我们想要在JS中获取console.log()的输出结果呢?其实不难,先将原本的console.log保存起来,然后替换成另外一个实现即可.代码如下: var lastLog; console.oldLog = console.log; console.log = function(str) { console

javascript代码调试之console.log 用法图文详解_javascript技巧

大家都有用过各种类型的浏览器,每种浏览器都有自己的特色,本人拙见,在我用过的浏览器当中,我是最喜欢Chrome的,因为它对于调试脚本及前端设计调试都有它比其它浏览器有过之而无不及的地方.可能大家对console.log会有一定的了解,心里难免会想调试的时候用alert不就行了,干嘛还要用console.log这么一长串的字符串来替代alert输出信息呢,下面我就介绍一些调试的入门技巧,让你爱上console.log 先的简单介绍一下chrome的控制台,打开chrome浏览器,按f12就可以轻松

js调试工具console.log()方法查看js代码的执行情况_javascript技巧

我之前在调试代码的时候,跟砸js代码执行情况,一般都是通过在代码块中使用alert的方式查看js代码的执行情况,今天也是看到有朋友使用console.log函数打印输出函数,变量,对象,下边就console.log的使用情况进行记录,具体的语法是: console.log("值为:",fn); console.log()能够输出变量,函数,数组,对象等等 <html> <head> <title>this关键字_函数调用</title>

JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)_基础知识

JavaScript 输出 JavaScript 没有任何打印或者输出的函数. JavaScript 显示数据 JavaScript 可以通过不同的方式来输出数据: 使用 window.alert() 弹出警告框. 使用 document.write() 方法将内容写到 HTML 文档中. 使用 innerHTML 写入到 HTML 元素. 使用 console.log() 写入到浏览器的控制台. 使用 window.alert() 你可以弹出警告框来显示数据: <!DOCTYPE html>

JavaScript如何输出显示内容(document.write、alert、innerHTML、console.log)

JavaScript 输出 JavaScript 没有任何打印或者输出的函数. JavaScript 显示数据 JavaScript 可以通过不同的方式来输出数据: 使用window.alert()弹出警告框. 使用document.write()方法将内容写到 HTML 文档中. 使用innerHTML写入到 HTML 元素. 使用console.log()写入到浏览器的控制台. 使用 window.alert() 你可以弹出警告框来显示数据: <!DOCTYPE html> <htm

在浏览器控制台输出内容 console.log(string);

在浏览器控制台中写如数据 1添加    <script type="text/javascript">djConfig = { isDebug: true };</script>     在<script>写入需要输出的内容 <script> 如: dojo.require("esri.map"); function init() { var map = new esri.Map("map"); d

console输出显示-怎么才能显示Eclipes中Console的全部输出

问题描述 怎么才能显示Eclipes中Console的全部输出 现在只显示最后输出的部分...前边的看不了啊怎么才能显示Eclipes中Console的全部输出.在哪里设置.我输出了很多的内容.用JAVA输入了一个XML里的内容,然后只讲最后几百行的输出了出来前边的没输出.请问怎么全部输出?能在哪设置? 解决方案 Window->Preferences->Run/Debug/Console->Console buffer size 解决方案二: console有一个limit line

node.js中的console.log方法使用说明_node.js

方法说明: 向标准输出流打印字符并以换行符结束. 语法: 复制代码 代码如下: console.log([data], [...]) 接收参数: console.log接受若干个参数,如果只有一个参数,则输出这个参数的字符串形式. 如果有多个参数,则以类似于C语言printf()命令的格式输出. 如果没有参数,只打印一个换行符. 例子: 复制代码 代码如下: var count = 1234; console.log('count: %d', count); //输出结果  count : 12