簡體   English   中英

JS對象數組刪除最后一個空元素

[英]JS Object Array Remove last empty element

我有那個javascript對象:

MyObject = [
   {
     "name" : "aaa",
     "firstname" : "aaaaa"
   },
   {
     "name" : "bbb",
     "firstname" : "bbbb"
   },
   {
     "name" : "cccc",
     "firstname" : "" <--------- firstname is empty, but the element is not in the last
   },
   {
     "name" : "ddd",
     "firstname" : "dddd"
   },
   {
     "name" : "eeee",
     "firstname" : ""  <--------- firstname is empty
   },
   {
     "name" : "fffff",
     "firstname" : ""  <--------- firstname is empty
   },
]

我想刪除具有“ firstname”為空的最新行 ...(一種修整)...我不想刪除具有“ firstname”為空的所有行...,而是那些最新行中的人。 (在底部)

因此,結果將是:

MyObject = [
   {
     "name" : "aaa",
     "firstname" : "aaaaa"
   },
   {
     "name" : "bbb",
     "firstname" : "bbbb"
   },
   {
     "name" : "cccc",
     "firstname" : ""
   },
   {
     "name" : "ddd",
     "firstname" : "dddd"
   }
]

謝謝

您可以在數組末尾彈出,只要名字為空

 var MyObject = [{ "name": "aaa", "firstname": "aaaaa" }, { "name": "bbb", "firstname": "bbbb" }, { "name": "cccc", "firstname": "" }, { "name": "ddd", "firstname": "dddd" }, { "name": "eeee", "firstname": "" }, { "name": "fffff", "firstname": "" }]; for (var i=MyObject.length;i--;) if (MyObject[i].firstname==="") MyObject.pop(); else break; console.log(MyObject) 
 .as-console-wrapper {max-height: 100%!important; top: 0!important;} 

嘗試這個:

 var MyObject = [ { "name" : "aaa", "firstname" : "aaaaa" }, { "name" : "bbb", "firstname" : "bbbb" }, { "name" : "cccc", "firstname" : "" }, { "name" : "ddd", "firstname" : "dddd" }, { "name" : "eeee", "firstname" : "" }, { "name" : "fffff", "firstname" : "" } ]; var i = MyObject.length; while(true) { if (!MyObject[--i].firstname) { MyObject.pop(); } else { break; } } console.log(MyObject); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM