Javascript 来自对象的数组中的特定数据
我有这样的数据Javascript 来自对象的数组中的特定数据,javascript,arrays,object,Javascript,Arrays,Object,我有这样的数据 const data = { pizza: ['Pizza Margherita', 'peppy paneer'], sandwich: [], burger: ['Veg Maharaja'], number: [0,2] }; 我想以数组的形式存储数据 [ 'Pizza Margherita', 'peppy paneer','Veg Maharaja' ] 这就是我试过的 const food = []; for(key in data
const data = {
pizza: ['Pizza Margherita', 'peppy paneer'],
sandwich: [],
burger: ['Veg Maharaja'],
number: [0,2]
};
我想以数组的形式存储数据
[ 'Pizza Margherita', 'peppy paneer','Veg Maharaja' ]
这就是我试过的
const food = [];
for(key in data) {
if (data.hasOwnProperty(key)) {
const element = data[key];
element.forEach(el => {
food.push(el)
});
}
}
//It Gives output like [ 'Pizza Margherita', 'peppy paneer', 'Veg Maharaja', 0, 2 ]
但是我想忽略最后一个键号。您可以使用
对象将对象转换为数组。值
您可以使用concat
和spread语法展平数组。使用filter
仅获取字符串
const数据={
披萨:[“玛格丽塔披萨”、“活力派披萨”],
三明治:[],
汉堡:['vegmaharaja'],
编号:[0,2]
};
const result=[].concat(…Object.values(data)).filter(isNaN);
控制台日志(结果)
您可以使用object将对象转换为数组。value
您可以使用concat
和spread语法展平数组。使用filter
仅获取字符串
const数据={
披萨:[“玛格丽塔披萨”、“活力派披萨”],
三明治:[],
汉堡:['vegmaharaja'],
编号:[0,2]
};
const result=[].concat(…Object.values(data)).filter(isNaN);
控制台日志(结果)
您需要设置一个条件,以避免对数字
键值进行迭代。
const数据={
披萨:[“玛格丽塔披萨”、“活力派披萨”],
三明治:[],
汉堡:['vegmaharaja'],
编号:[0,2]
};
常量食物=[];
用于(输入数据){
if(data.hasOwnProperty(key)){
常量元素=数据[键];
如果(键!=='number'){
元素。forEach(el=>{
食物。推(el)
});
}
}
}
console.log(food)
您需要设置一个条件,以避免对数字
键值进行迭代。
const数据={
披萨:[“玛格丽塔披萨”、“活力派披萨”],
三明治:[],
汉堡:['vegmaharaja'],
编号:[0,2]
};
常量食物=[];
用于(输入数据){
if(data.hasOwnProperty(key)){
常量元素=数据[键];
如果(键!=='number'){
元素。forEach(el=>{
食物。推(el)
});
}
}
}
console.log(food)
或者您可以简单地排除名为number
const数据={
披萨:[“玛格丽塔披萨”、“活力派披萨”],
三明治:[],
汉堡:['vegmaharaja'],
编号:[0,2]
};
常量食物=[];
用于(输入数据){
if(data.hasOwnProperty(key)&&key!=“number”){
常量元素=数据[键];
元素。forEach(el=>{
食物。推(el)
});
}
}
console.log(food)
或者您可以简单地排除名为number
const数据={
披萨:[“玛格丽塔披萨”、“活力派披萨”],
三明治:[],
汉堡:['vegmaharaja'],
编号:[0,2]
};
常量食物=[];
用于(输入数据){
if(data.hasOwnProperty(key)&&key!=“number”){
常量元素=数据[键];
元素。forEach(el=>{
食物。推(el)
});
}
}
console.log(food)
这是一种老式的方法,但结果是您所期望的
var数据={
披萨:[“玛格丽塔披萨”、“活力派披萨”],
三明治:[],
汉堡:['vegmaharaja'],
编号:[0,2]
};
var食品=[];
用于(输入数据){
if(data.hasOwnProperty(key)){
常量元素=数据[键];
元素。forEach(el=>{
如果(el的类型=='string')食物推送(el)
});
}
}
console.log(food)
这是一种老式的方法,但结果是您所期望的
var数据={
披萨:[“玛格丽塔披萨”、“活力派披萨”],
三明治:[],
汉堡:['vegmaharaja'],
编号:[0,2]
};
var食品=[];
用于(输入数据){
if(data.hasOwnProperty(key)){
常量元素=数据[键];
元素。forEach(el=>{
如果(el的类型=='string')食物推送(el)
});
}
}
console.log(food)
您如何知道它是否是要保留的变量数组?但我想忽略最后一个键号
,所以对象的结构不确定?还是只想添加字符串?@CertainPerformance strings only如何知道它是否是要保留的变量数组?但我想忽略最后一个键号
,因此对象的结构不确定?还是只想添加字符串?@CertainPerformance strings only请解释代码是如何解决问题的。请解释代码是如何解决问题的。