作家
登录

JavaScript运算符规则与隐式类型转换详解

作者: 来源: 2017-09-06 09:51:17 阅读 我要评论

本文中涉及的参考材料全部声明在了JavaScript 数据构造进修与实践材料索引 。

隐式类型转换

在 JavaScript 中,当我们进行比较操作或者加减乘除四则运算操作时,经常会触发 JavaScript 的隐式类型转换机制;而这部分也往往是令仁攀困惑的处所。譬如浏览器中的 console.log 操作经常会将任何值都转化为字符串然后展示,而数学运算则会起首将值转化为数值类型(除了 Date 类型对象)然落后行操作。

我们起首来看几组典范的 JavaScript 中运算符操作结不雅,欲望浏览完本部分之后可以或许对每一个条目都能进行合理解释:

  1. // 比较 
  2. [] == ![] // true 
  3. NaN !== NaN // true 
  4.  
  5. 1 == true // true 
  6. 2 == true // false 
  7. "2" == true // flase 
  8.  
  9. null > 0 // false 
  10. null < 0 // false 
  11. null == 0 // false 
  12. null >= 0 // true 
  13.  
  14. // 加法 
  15. true + 1 // 1 
  16. undefined + 1 // NaN 
  17.  
  18. let obj = {}; 
  19.  
  20. {} + 1 // 1,这里的 {} 被当成了代码块 
  21. { 1 + 1 } + 1 // 1 
  22.  
  23. obj + 1 // [object Object]1 
  24. {} + {} // Chrome 上显示 "[object Object][object Object]",Firefox 显示 NaN 
  25.  
  26. [] + {} // [object Object] 
  27. [] + a // [object Object] 
  28. + [] // 等价于 + "" => 0 
  29. {} + [] // 0 
  30. a + [] // [object Object] 
  31.  
  32. [2,3] + [1,2] // '2,31,2' 
  33. [2] + 1 // '21' 
  34. [2] + (-1) // "2-1" 
  35.  
  36. // 减法或其他操作,无法进行字符串连接,是以在缺点的字符串格局下返回 NaN 
  37. [2] - 1 // 1 
  38. [2,3] - 1 // NaN 
  39. {} - 1 // -1 

原始类型间转换

  1. // String 
  2. let value = true
  3. console.log(typeof value); // boolean  
  4. value = String(value); // now value is a string "true" 
  5. console.log(typeof value); // string  
  6. // Number 
     1/4    1 2 3 4 下一页 尾页

      推荐阅读

      CIO修炼之道第4讲!张明文谈六项能力打造IT数字神经网络

    《CIO修炼之道》第 4 讲制造业企业的核心竞争力表如今产品和办事上,展如今客户面前的竞争力就是&ldquo;性价比高,交货快!&rdquo;,这&ldquo;一高、一快&rdquo;是互相接洽关系的。比如,采取提前备货、扩大年夜产能等>>>详细阅读


    本文标题:JavaScript运算符规则与隐式类型转换详解

    地址:http://www.17bianji.com/lsqh/37165.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)