这段代码被认为是从数组中移除所有错误的值。我是接近成功了,还是应该放弃我正在做的事情?我倾向于接近,但后来却放弃了。
function bouncer(arr) {
var bouncer = arr.filter(function(bouncer)undefined, null, NaN, 0, "", false); return arr; }
bouncer([7, "ate", "", false, 9]);发布于 2017-07-09 00:02:22
发布于 2017-07-09 12:21:28
这不是一个真正的答案,只是建议。
如果你正在学习编程,你应该写你的代码,以便(对你来说)清楚地知道发生了什么。例如,下面是一些有点学究的代码,但希望可以理解:
function copy_truthies(in_values) {
let out_values = [];
in_values.forEach(value => {
if (value) {
out_values.push(value);
}
});
return out_values;
}
let all_values = [7, "ate", "", false, 9];
let truthy_values = copy_truthies(all_values);
console.log(truthy_values);Tushar的解决方案是惯用的、优雅的,并且做了同样的事情;但它可能不会立即被刚开始的人理解:
console.log([7, "ate", "", false, 9].filter(e=>e))再过几个月,您就可以流畅地使用一行程序进行思考了:)
https://stackoverflow.com/questions/44987256
复制相似问题