さて、配列が与えられた場合、問題は「偽」のすべての要素を削除することでした。 ブール値を引数として渡すことはどのように機能しますか?
この
は、私の解決策が言ったことだった(作品)問題:function bouncer(arr) {
var trueArr = [];
for(i=0; i<arr.length; i++){
if (arr[i]){
trueArr.push(arr[i]);
}
}
return(trueArr);
}
bouncer([7, "ate", "", false, 9]);
これは動作し、テストに合格します。
function bouncer(arr) {
return arr.filter(Boolean);
}
私はこれがどのように動作するかを取得していない、まだブールANDフィルター上のMDNの記事を読んできました。しかし、ここで与えられた解決策ですか?ここで何が起こっているのですか? Booleanはコールバック関数ですか?もしそうなら、それはどのようにバックエンドで動作しますか?私はここに座って頭を傷つけるだけです。 filterから
'Boolean'はそれをフィルタリングすることにより、あなたはすべてのfalseyを削除するので、truthy値に対して真とfalseyもののためにfalseを返す関数が –
はそれが値ので、ブール値を作成し、コンストラクタですarr(array)のすべての要素を渡されたブール値と比較し、渡された値と一致する要素の配列を返します。あなたは、ブール値でもないフィルターを使うことができます。 – brijrajsinh
'[7、" ate "、" false、9] .filter(i => {Boolean Boolean(i)})私はブール値が真偽であるか偽であるかどうかをチェックすると思ったのですか?だから真実の価値をどうやって返すのだろうか?それは実際には、真実でない値を除外するとは言いませんか? – epascarello