我正在尝试将字符串转换为JS对象。它已成功使用JSON.parse方法,但是问题是,当我们从对象中删除某些东西时,它丢失了/没有删除了“,”。检查此程序并输出:
var jsonString = '[{"connectionName" : "conn1", "ipaddress" : "127.0.0.1","port" : "80"}, {"connectionName" : "conn2", "ipaddress" : "127.0.0.100","port" : "760"}]';
var a = JSON.parse(jsonString); // Successfully converted to Object and i can access them
delete a[1]; //deletes the conn2
var obj = {"connectionName" : "conn3", "ipaddress" : "127.0.0.100","port" : "760"};
a.push(obj);
console.dir(a);
输出:
[ { connectionName: 'conn1', ipaddress: '127.0.0.1', port: '80' },
,
{ connectionName: 'conn3',
ipaddress: '127.0.0.100',
port: '760' } ]
您能否在两个对象之间观察到额外的“,”:
'80' },
,
{ connectionName:
最佳答案
如果要删除数组项,请使用 splice
而不是delete
a.splice(1, 1);
只是要清楚。
splice
将改变原始数组。