我有以下JS代码。我无法将Metric
变量推送到MetricArray
。什么是问题?已更新为添加循环和清除数组的语句。无法推送数组中的值
PS:这不是完整的代码,我不能把确切的代码放在这里。我获取Metric
的不同值并将它们推送到ArrayOfMetric.MetricArray
。然后,我重置ArrayOfMetric.MetricArray
并获取另一组值Metric
值等。所以我需要一种方法来重置ArrayOfMetric
。还请解释为什么当我在打印数组时有初始值被擦除,而数组有这些值的快照。
有没有办法重置数组而不失去初始值?
for(var i = 0; i < 10; i++) {
var Metric = {
"Code": "",
"Name": "",
"Value": ""
};
var ArrayOfMetric = {
"MetricArray": []
};
Metric.Code = "ABC";
Metric.Name = "AB Corporation";
Metric.Value = 1245.67;
ArrayOfMetric.MetricArray.push(Metric);
console.log(Metric); // Prints correct values
console.log(ArrayOfMetric); // Shows MetricArray empty
ArrayOfMetric.MetricArray = [];
}
工作正常https://jsfiddle.net/_alexander_/kor3z7bp/ –
@Alexander是的,这工作。请参阅更新的问题。 – Forkmohit
你正在清除循环结尾的MetricArray ... –