【问题标题】:delete object from array javascript [duplicate]从数组javascript中删除对象[重复]
【发布时间】:2016-07-28 18:10:39
【问题描述】:

需要帮助 我有一个这样的数组

usernames=[
  username1{name : 'mark' , number : '10' , color:'green'},
  username2{name : 'jeff' , number : '15' , color:'blue'} ,
  username3{name : 'joy' , number : '30' , color:'yellow'}]

如何按对象名(用户名1/用户名2)删除整行?

【问题讨论】:

  • usernames.splice(1,1)

标签: javascript arrays json object


【解决方案1】:

假设你有一个对象,那么用

var usernames = {
        username1: { name: 'mark', number: '10', color: 'green' },
        username2: { name: 'jeff', number: '15', color: 'blue' },
        username3: { name: 'joy', number: '30', color: 'yellow' }
    };

delete usernames.username2;
console.log(usernames);    

否则,如果您有一个包含对象的数组,那么与

var usernames = [
        { username1: { name: 'mark', number: '10', color: 'green' }},
        { username2: { name: 'jeff', number: '15', color: 'blue' }},
        { username3: { name: 'joy', number: '30', color: 'yellow' }}
    ];

usernames.splice(1, 1);
console.log(usernames);    

【讨论】:

  • 我想通过对象 id (username1/username2) 删除它
【解决方案2】:

使用splice 方法

var usernames= [
  {"username1": {name : 'mark' , number : '10' , color:'green'}},
  {"username2": {name : 'jeff' , number : '15' , color:'blue'}} ,
  {"username3": {name : 'joy' , number : '30' , color:'yellow'}}]

usernames.splice(1,1);
console.log(usernames);

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/splice

【讨论】:

  • 我想通过对象 id (username1/username2) 删除它
【解决方案3】:

你需要这个:

usernames.splice(1,1);

仅删除第二个元素。

第一个参数是要移除的item的索引,第二个是要移除的元素个数。

How do I remove a particular element from an array in JavaScript?

编辑

var index = usernames.indexOf(username2);
usernames.splice(index,1);

【讨论】:

  • 我想通过对象 id (username1/username2) 删除它
  • @Андрей_-_ 请查看编辑
猜你喜欢
  • 1970-01-01
  • 2018-06-19
  • 2014-06-25
  • 2020-10-25
  • 2018-01-08
  • 2018-11-14
  • 2018-08-15
  • 1970-01-01
  • 2020-04-15
相关资源
最近更新 更多