从数组中删除错误的值会留下空值.如何改进我的代码
Removing falsy values from a array leaves me with null values. How to Improve my code?
我正试图从数组中删除错误的值。我尝试过usingn typeOf和Boolean,但这会在数组中留下null值。如何改进我的代码?
function bouncer(arr) {
var myarr=[];
for(var i=0;i<arr.length;i++)
{
if(typeof arr[i] === 'boolean' || arr[i]=== 0 || arr[i]==="")
{
delete arr[i];
}
}
return arr;
}
bouncer([7, "ate", "", false, 9]);
这个代码的输出:
([7, "ate", null, null, 9])
如何改进此代码?为什么typeOf==='oolean'不删除0和空字符串"。
更新:代码应满足以下条件。
bouncer([7, "ate", "", false, 9]) should return [7, "ate", 9].
bouncer(["a", "b", "c"]) should return ["a", "b", "c"].
bouncer([false, null, 0, NaN, undefined, ""]) should return [].
感谢
会这么简单吗?
var arr = [7, "ate", "", false, 9, "a", "b", "c", false, null, 0, NaN, undefined, ""];
var result = arr.filter(a=>a);
// [7, "ate", 9, "a", "b", "c"]
console.log(document.body.innerHTML = result);
var newArr = [];
arr.forEach(function(element) {
if (element != false)
newArr.push(element);
});
return newArr;
尝试if(!arr[i]){arr.splice(i,1)}
相关文章:
- 映射数组ES6时考虑空值
- Model中的Typeahead返回空值以形成输入字段
- JavaScript-HTML表单到JSON(空值)和格式
- webkit输入类型=在错误日期发送空值的日期
- 为什么数据列表选项的id返回空值
- 如何使用敲除映射将空值映射到空的可观察数组
- 完整日历:在启动时传递空值
- 为什么此函数会过滤掉“空”值
- 通过 Yii2 表单插入数据时获取空值
- 从角度服务返回空值的变量
- Math.min.apply 返回 0 表示空值
- Angular材质md日期选择器中的空值
- 提示时检测空值
- Sails.js beforeValidate()清空值参数
- 为什么jQuery attr('href','#')设置了一个空值而不是#
- 正则表达式以避免HTML标记和空值
- sequelize-foreignkey允许空值
- 删除php数组中的空值
- 如何删除angularjs中对象的空值
- 从数组中删除错误的值会留下空值.如何改进我的代码