这是我要动态重新创建的对象

var myPath = {
    one: [
        new google.maps.LatLng(1,2),
        new google.maps.LatLng(3,4))
    ]};

这是我没有成功的尝试:
var myPath2 = {};
var newFieldName = 'one';
myobj[newFieldName].push(new google.maps.LatLng(1,2));
myobj[newFieldName].push(new google.maps.LatLng(3,4));

我收到以下错误:



另一种尝试:
var myPath2 = {};
var newFieldName = 'one';
myobj[newFieldName].add(new google.maps.LatLng(1,2));
myobj[newFieldName].add(new google.maps.LatLng(3,4));

我收到以下错误:



如何添加/推送新元素?

最佳答案

您首先需要将字段值设置为数组,然后可以将push元素放入其中。

var myPath2 = {};
var newFieldName = 'one';

// Set field value to an array
myPath2[newFieldName] = [];

// Then you can push elements into it
myPath2[newFieldName].push(new google.maps.LatLng(1,2));
myPath2[newFieldName].push(new google.maps.LatLng(3,4));

关于javascript - 动态地向对象添加元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35327839/

10-11 23:43