源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

探讨js中的双感叹号判断

  • 时间:2021-01-30 13:26 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:探讨js中的双感叹号判断
今天看qunit源代码,发现一段很奇怪的代码,虽然能领会他的意思,但是不明白双感叹号起到的作用。
[u]复制代码[/u] 代码如下:
function id( name ) {     return !!( typeof document !== "undefined" && document && document.getElementById ) &&         document.getElementById( name ); }
然后去网上查了些资料,他相当于三元运算符,返回boolean值。
[u]复制代码[/u] 代码如下:
var ret = !!document.getElementById
等价于:
[u]复制代码[/u] 代码如下:
var ret = document.getElementById ? true : false;  
当值是非空字符串和非零数字返回true,当值是空字符串、0或者null返回false。
[u]复制代码[/u] 代码如下:
var a = " "; alert(!!a);   //true var a = "s"; alert(!!a);   //true var a = true; alert(!!a);   //true var a = 1; alert(!!a);   //true var a = -1; alert(!!a);   //true var a = -2; alert(!!a);   //true var a = 0; alert(!!a);   //false var a = ""; alert(!!a);   //false var a = false; alert(!!a);   //false var a = null; alert(!!a);   //false
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部