var new= function(J, S) {
if (!J || !S) return 0;有人能帮我理解这个if条件吗?
发布于 2019-09-18 11:32:46
如果参数J或S中的任何一个是"falsey",在JavaScript中表示它们等于undefined、false、NaN、null、0或'‘(空字符串),它基本上将返回0(“falsey”值本身)。
这样做的目的可能是在继续函数的其余部分之前检查参数是否没有丢失,可能是因为如果缺少任何一个参数,函数就会出错或返回无效的结果。
发布于 2019-09-18 11:36:43
如果(||) J或S为falsy,则函数返回0
falsenullundefinedNaN如果两个值都为真,则返回undefined。
var nu = function (J, S) {
if (!J || !S) return 0;
}
// booleans
console.log(nu(true, true));
console.log(nu(true, false));
console.log(nu(false, false));
// other truthy/falsy values
console.log(nu(1, 1));
console.log(nu(1, 0));
console.log(nu(true)); // S is undefined
console.log(nu('foo', ''));
console.log(nu({}, null));
console.log(nu(1, NaN));
发布于 2019-09-18 11:34:05
如果J= "“或null或未定义,0,NaN,false,则!J将为true。
!"" -> true
!null -> true
!undefined -> true
!NaN -> true
!0 -> true
!false -> true它将检查J,S变量是否为空或null或未定义。
https://stackoverflow.com/questions/57984656
复制相似问题