gpt4 book ai didi

javascript .filter() 真 boolean 值

转载 作者:可可西里 更新时间:2023-11-01 01:35:33 28 4
gpt4 key购买 nike

function bouncer(arr) {
// Don't show a false ID to this bouncer.
function a(b) {
if(b !== false) {
return b;
}
}

arr = arr.filter(a);
return arr;
}

bouncer([7, 'ate', '', false, 9]);

我必须只返回 true boolean 语句,当我运行这段代码时,它起作用了。但是,我很困惑,因为无论是 b !== true 还是 b !== false,我的“if 语句”都会起作用。有人可以解释为什么这两种方式都有效吗?

最佳答案

显然 .filter()在 ES5 中引入。

这无疑帮助我了解了这里发生的事情。希望对您有所帮助!

本质上,写作:

arr.filter(Boolean)

和写一样:

arr.filter( function(x) { return Boolean(x); }); 

Boolean()也是一个函数,它在 true 时返回 truthy,在 false 时返回 falsy!

例子:

var a = [1, 2, "b", 0, {}, "", NaN, 3, undefined, null, 5];

var b = a.filter(Boolean); // [1, 2, "b", {}, 3, 5];

来源:here .

关于javascript .filter() 真 boolean 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30016773/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com