百科问答小站 logo
百科问答小站 font logo



JavaScript一个疑问,[ ] (空数组)== true ,具体如下,请问这是为何? 第1页

  

user avatar   Ivony 网友的相关建议: 
      

其实这是早期类C语言的一个通病。

C语言以及与其兼容的C++语言中,是没有boolean类型的,也没有true和false关键字。


所有的条件判断语句,大体上都基本等价于expression != 0。

JavaScript的这个特性便来自于此,也就是说理论上来说if( expression )其实是if( expression is not false value )


当然,JavaScript为了让这个语言看起来更加平易近人点,又搞出了true和false两个关键词和boolean类型,这才出现了各种奇奇怪怪的现象。




  

相关话题

  C 语言中指针数组和数组指针、函数指针、指向函数的指针等等该怎么理解? 
  c语言中,关于switch循环的这个疑问怎么解? 
  冯大辉(Fenng)的编程能力到底如何? 
  如果按国家分,哪个国家编程最厉害?有没有代表人物? 
  总是问「学XXX前景怎么样」、「学XXX能不能立刻找到工作」的人是不是真的打心里觉得未来很容易预测? 
  软件工程专业,不会编程,今年(2020 年)毕业,如何找工作? 
  Stack Overflow 2016 年度报告中有哪些有趣的事实? 
  Java 8接口有default method后是不是可以放弃抽象类了? 
  如何评价应届生前端人员月薪要3.3k到13k后,该公司CEO的评价? 
  QQ 等即时通讯软件的消息传输的技术原理是什么? 

前一个讨论
川普反同性恋吗?
下一个讨论
为什么 N 卡驱动安装完之后会把临时文件(安装包)保留在 C:NVIDIA,而不是把它删掉呢?





© 2025-05-14 - tinynew.org. All Rights Reserved.
© 2025-05-14 - tinynew.org. 保留所有权利