函数判断与Js中的’&& ||‘+假值
_.isFunction = function(obj){
return typeof obj == 'function' || false;
}就是简单判断一个函数而已,不过可以扩展出一个知识点嘿嘿,
你是怎么看js中的&&,||?
与其说是逻辑运算符,不如说是属性选择符。
&&执行方式(a&&b):如果a为true,返回b
否则返回a
||执行方式(a || b):如果a为true, 返回a
否则返回b
'' || [1,2] //[1,2]
'' && [1,2] //""
[1] || [] //[1]
[1] && [] //[]然后把js中为false的属性整理一下啦:
ES5规范9.2定义了抽象操作ToBoolean,列举了布尔强制类型转换所有可能出现的结果。
undefined
null
false
+0,-0 和 NaN
""
从逻辑上说,假值列表以外的都应该是真值。
除了'',其他的字符串都是真值。
[],{},fucntion(){}都不在假值列表里,所以他们都是真值。
真值列表是无限长的,我们只能根据假值列表作为参考,可以理解位假值列表以外的值都是真值。
常用的 || 用法:设置默认值
js代码压缩工具常用的‘守护运算符’:
Last updated
Was this helpful?