Javascript逻辑将值推送到数组一次,然后更新值

Javascript逻辑将值推送到数组一次,然后更新值,javascript,arrays,Javascript,Arrays,谁能给我一个逻辑,我必须将数据推送到一个数组中一次,然后我应该更新推送的数据。如果我使用array.push,那么它每次都会追加数据,但我只想推一次数据,然后再进行更新。我不完全确定您的要求,但如果您试图将对象添加到数组中并更新它,而不进一步追加到数组中 var a = []; var data = {}; // add `data` to array `a`. a.push(data); // Update property `property` of `data` to value. //

谁能给我一个逻辑,我必须将数据推送到一个数组中一次,然后我应该更新推送的数据。如果我使用array.push,那么它每次都会追加数据,但我只想推一次数据,然后再进行更新。

我不完全确定您的要求,但如果您试图将对象添加到数组中并更新它,而不进一步追加到数组中

var a = [];
var data = {};
// add `data` to array `a`.
a.push(data);
// Update property `property` of `data` to value.
// This also updates `a[0]`.
data.property = 'value';
a[0].property2 = 'othervalue';
a[0].property == 'value'; // true
data.property2 == 'othervalue'; // also true

简而言之,
data
a[0]
引用内存中的同一对象,对其中一个对象的更新将更新另一个对象。

您可以检查数组中是否存在值,然后从数组中弹出数据,并在数组中每次推送数据

If(arr.length >= 1)
{
    arr.pop();
}

arr.push(data);

这也会起作用


谢谢

您正在更新什么…?您可以通过一个数组进行迭代,并通过某个唯一的元素字段检查新元素是否已经存在,如果已经存在,则需要更新该元素。如果没有发现,您需要添加元素我已经尽我所能回答了您的问题。在将来,请尝试发布任何代码(工作或不工作)来演示您所尝试的操作。即使它不起作用,它通常是确定你的意图的好方法。如果您的问题仍未解决,请考虑澄清问题,可能用代码,并让我知道,所以我可以更新我的答案。不太清楚你说的“更新”是什么意思?如果相同的值已经存在于数组中,则不需要将其添加到数组中。数组是一系列值。那么,您如何只执行一次
.push()
?这个问题真的一点也不清楚。请用文字准确描述当连续四次操作发生时,您希望发生什么。很抱歉没有将代码添加到我的帖子中。但这就是我要找的东西。。。基本上,我有一个通过window.EventSource的onmessage事件,它将从服务器向我发送持续更新。。这些更新是JSON对象,我正在尝试将JSON添加到表行中,我不能使用push,因为它会不断添加行。。正如我前面提到的,我应该附加它一次,然后在那里更新它。因此,如果要替换整个对象,只需设置索引
a[i]=responseJsonObject
where
i
是最初存储该值的索引/
push
ed。如果只是更新字段,那么可以使用与答案中类似的代码。
arr[0] = data;