百科问答小站 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类型,这才出现了各种奇奇怪怪的现象。




  

相关话题

  什么是 hash? 
  没学过编程,对学数据结构与算法影响大吗? 
  如何看待国内地图行业更新政策商用api每年需支付5w元? 
  程序猿如何快速高效的改 bug?改bug都有哪些技巧? 
  JavaScript 中,定义函数时用 var foo = function () {} 和 function foo() 有什么区别? 
  请问有什么好的C语言面向对象的扩展的方式?最好是有比较好的项目的源码参考。 
  前端还有哪些待开垦的领域? 
  对于C#与C++之间的数据传输,用GCHandle或Marshal是否就是最好的方案了? 
  设计闭包(Closure)的初衷是为了解决什么问题? 
  学 C# 的是不是被绑在 Windows 上? 

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





© 2025-01-27 - tinynew.org. All Rights Reserved.
© 2025-01-27 - tinynew.org. 保留所有权利