繁体   English   中英

如何修改javascript对象中的数组元素?

[英]How to modify array element within javascript object?

我正在用NodeJS编写代码,并且有一个如下所示的对象。

const jsonData=
{
    "description": "description",
    "hosts": [
        "host1",
        "host2",
        "host3"
    ]
}

我想删除除第一个之外的所有host元素。

期望输出:

const jsonData=
{
    "description": "description",
    "hosts": [
        "host1"
    ]
}

并且,剩余的元素应该移动到另一个变量。

const hostelementsExceptFirst = [ "host2", "host3" ];

我正在执行以下操作,但没有提供所需的输出。

delete jsonData['hosts'];

如果你只想改变数组,你可以使用splice ..

例如..

 const jsonData = { "description": "description", "hosts": [ "host1", "host2", "host3" ] } const hostelementsExceptFirst = jsonData.hosts.splice(1); console.log(jsonData); console.log(hostelementsExceptFirst);

您可以使用 Array.slice() 获取数组的一部分,然后重新分配 hosts 值。

 const jsonData = { "description": "description", "hosts": [ "host1", "host2", "host3" ] } const remainers = jsonData.hosts.slice(1); jsonData.hosts = [jsonData.hosts[0]]; console.log(jsonData); console.log(remainers);

const [firstValue, ...othersValues] = jsonData.hosts;

firstValue 将是 host1,othersValues 将与其他人一起排列

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM