[英]How to remove “integer” array from object in JavaScript
我得到了这个输入
var input=[ "Axel",
4,
4.21,
{ name : 'Bob', age : 16 },
{ type : 'fish', model : 'golden fish' },
[1,2,3],
"John",
{ name : 'Peter', height: 1.90} ];
结果必须是这个
[ { name : 'Bob', age : 16 },
{ type : 'fish', model : 'golden fish' },
{ name : 'Peter', height: 1.90} ];
使用Array.prototype.filter
,仅保留不是Arrays的 对象
var input = ["Axel",
4,
4.21,
{name: 'Bob', age: 16},
{type: 'fish', model: 'golden fish'},
[1, 2, 3],
"John",
{name: 'Peter', height: 1.90}
];
input = input.filter(function (e) {
return (typeof e === 'object') && !Array.isArray(e);
}); /*
[
{"name": "Bob", "age": 16},
{"type": "fish", "model": "golden fish"},
{"name": "Peter", "height": 1.9}
]
*/
尝试使用数组过滤器删除不需要的元素。 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/filter
删除所有整数
var filteredList = input.filter(function(val) {
return isNaN(val);
}):
/*
filteredList is now =
{ name: 'Bob', age: 16 },
{ type: 'fish', model: 'golden fish' },
[ 1, 2, 3 ],
'John',
{ name: 'Peter', height: 1.9 } ]
*/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.