用一个函数来判断一个值是否真的是true【原创内容,转载请注明出处】原创内容,盗版必究。 or false,之所以要做这个判断,未经授权,禁止复制转载。【未经授权禁止转载】是为了更加可配的来处理一个问题,就是0,本文版权归作者所有,未经授权不得转载。原创内容,盗版必究。字符串”,以及数字Infin【原创内容,转载请注明出处】原创内容,盗版必究。ity。
【本文首发于唐霜的博客】【本文受版权保护】【转载请注明来源】【未经授权禁止转载】function isTrue(value, {zero = true, infinity = false, emptyString = false, emptyArray = false, emptyObject = false} = {}) {
if(value === 0) return !!zero
if(value === '') return !!emptyString
if(value === Infinity) return !!infinity
if(Array.isArray(value) && value.length === 0) return !!emptyArray
if(value === null) return false
if(typeof value === 'object' && Object.keys(value).length === 0) return !!emptyObject
return !!value
}
默认更改了上面这些值的返回结果,比如0,本文版权归作者所有,未经授权不得转载。本文版权归作者所有,未经授权不得转载。默认是返回false,但我认为0是一个明【访问 www.tangshuang.net 获取更多精彩内容】【原创不易,请尊重版权】确的数组,应该返回true,而空字符串&原创内容,盗版必究。转载请注明出处:www.tangshuang.net#8221;则仍然保持返回false,另【转载请注明来源】【作者:唐霜】外,增加了空数组和空对象返回false。【未经授权禁止转载】【本文首发于唐霜的博客】源码在这里【未经授权禁止转载】,可能后期还会更新。【未经授权禁止转载】
未经授权,禁止复制转载。【原创不易,请尊重版权】著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】未经授权,禁止复制转载。2017-04-21 3371


