Javascript 从数组中的数组中获取和删除数据
我在数据操作方面遇到了一点问题,因为我对JavaScript不太了解。我有以下数组:Javascript 从数组中的数组中获取和删除数据,javascript,arrays,Javascript,Arrays,我在数据操作方面遇到了一点问题,因为我对JavaScript不太了解。我有以下数组: var Dict = [["x", "y", "z"], ["x", "w", "m"], ["u", "t", "d", "L"]]; 我需要的是选择所有第一个元素,然后选择所有第二个元素,等等。我已经尝试过了 for(var m in Dict) { First.push(m[0]); Second.push(m[1]); Third.push(m[2]); } 但这似乎不起作用
var Dict = [["x", "y", "z"], ["x", "w", "m"], ["u", "t", "d", "L"]];
我需要的是选择所有第一个元素,然后选择所有第二个元素,等等。我已经尝试过了
for(var m in Dict) {
First.push(m[0]);
Second.push(m[1]);
Third.push(m[2]);
}
但这似乎不起作用。然后,我还需要删除顶部数组中的所有“x”,因为第一个问题,我甚至还没有尝试过删除。不要用于带数组的in。要获取所有第一个元素,请执行以下操作: ES5 ES6
(收益率
[“x”、“x”、“u”]
)不用于带数组的in。要获取所有第一个元素,请执行以下操作:
ES5
ES6
(产生
[“x”、“x”、“u”]
)尝试以下javascript,这应该可以工作:
var Dict = [
["x", "y", "z"],
["x", "w", "m"],
["u", "t", "d", "L"]
];
First = [];
Second = [];
Third = [];
for (m=0;m<Dict.length;m++) {
First.push(Dict[m][0]);
Second.push(Dict[m][1]);
Third.push(Dict[m][2]);
}
console.log(First);
console.log(Second);
console.log(Third);
尝试以下javascript,这应该可以工作:
var Dict = [
["x", "y", "z"],
["x", "w", "m"],
["u", "t", "d", "L"]
];
First = [];
Second = [];
Third = [];
for (m=0;m<Dict.length;m++) {
First.push(Dict[m][0]);
Second.push(Dict[m][1]);
Third.push(Dict[m][2]);
}
console.log(First);
console.log(Second);
console.log(Third);
如果您可以访问es6,则可以执行以下操作:
const Dict = [["x", "y", "z"],["x", "w", "m"], ["u", "t", "d", "L"]];
const [First, Second, Third] = Dict.map((_, i) => Dict.map(entry => return entry[i]));
es5版本将是:
var Dict = [["x", "y", "z"],["x", "w", "m"], ["u", "t", "d", "L"]];
var Items = Dict.map(function(_, i) {
return Dict.map(function(entry) {
return entry[i];
});
});
var First = Items.shift(),
Second = Items.shift(),
Third = Items.shift();
如果您可以访问es6,则可以执行以下操作:
const Dict = [["x", "y", "z"],["x", "w", "m"], ["u", "t", "d", "L"]];
const [First, Second, Third] = Dict.map((_, i) => Dict.map(entry => return entry[i]));
es5版本将是:
var Dict = [["x", "y", "z"],["x", "w", "m"], ["u", "t", "d", "L"]];
var Items = Dict.map(function(_, i) {
return Dict.map(function(entry) {
return entry[i];
});
});
var First = Items.shift(),
Second = Items.shift(),
Third = Items.shift();
试试这个:
var Dict = [["x", "y", "z"],["x", "w", "m"], ["u", "t", "d", "L"]];
var first = Dict.slice(0,1);
var second = Dict.slice(1,2);
var third = Dict.slice(-1);
要查看这会产生什么,请转到此处:
更好的选择
如果要使用一组可变索引执行此操作,可以使用拼接
而不是切片
:
var Dict = [["x", "y", "z"],["x", "w", "m"], ["u", "t", "d", "L"]];
var result = [];
for(var i = 0; i < Dict.length; i++){
result.push(Dict.splice(i));
}
var Dict=[[“x”、“y”、“z”]、[“x”、“w”、“m”]、[“u”、“t”、“d”、“L”];
var结果=[];
对于(变量i=0;i
你可以在这里看到:
试试这个:
var Dict = [["x", "y", "z"],["x", "w", "m"], ["u", "t", "d", "L"]];
var first = Dict.slice(0,1);
var second = Dict.slice(1,2);
var third = Dict.slice(-1);
要查看这会产生什么,请转到此处:
更好的选择
如果要使用一组可变索引执行此操作,可以使用拼接
而不是切片
:
var Dict = [["x", "y", "z"],["x", "w", "m"], ["u", "t", "d", "L"]];
var result = [];
for(var i = 0; i < Dict.length; i++){
result.push(Dict.splice(i));
}
var Dict=[[“x”、“y”、“z”]、[“x”、“w”、“m”]、[“u”、“t”、“d”、“L”];
var结果=[];
对于(变量i=0;i
你可以在这里看到:
检查这段代码
var Dict=[[“x”、“y”、“z”]、[“x”、“w”、“m”]、[“u”、“t”、“d”、“L”];
对于(变量i=0;ival!=“x”)
}
}
检查这段代码
var Dict=[[“x”、“y”、“z”]、[“x”、“w”、“m”]、[“u”、“t”、“d”、“L”];
对于(变量i=0;ival!=“x”)
}
}
控制台中有错误吗?它是一个数组。用于(var i=0;i控制台中是否有错误?它是一个数组。用于(var i=0;i堆栈,我在索引中不确定,在数组中找不到数组指南。工作方式类似于CharmHanks,在索引中不确定,在数组中找不到数组指南。工作方式类似于charm