簡體   English   中英

Javascript 從數組的兩側刪除空項

[英]Javascript remove empty items from sides of an array

這正是我的意思,但在 Javascript: PHP 從數組的兩側刪除空項目

我正在尋找最干凈的方法。 我想知道是否有比手動循環數組更好的方法。

這里有一個例子:

 const fullArray = new Array(10); fullArray[3] = 1; fullArray[5] = 1; fullArray[7] = 1; console.log('Input:', fullArray); const trimedArray = new Array(4); trimedArray[0] = 1; trimedArray[2] = 1; trimedArray[4] = 1; console.log('Output:', trimedArray);

如果您采用數組的鍵(僅采用數組上存在的屬性 - 在您的示例中它不會采用稀疏索引,例如 0 到 2、4、6 或 8),您可以調用Math.min和他們的Math.max

 const fullArray = new Array(10); fullArray[3] = 1; fullArray[5] = 1; fullArray[7] = 1; const keys = Object.keys(fullArray); const min = Math.min(...keys); const max = Math.max(...keys); const result = fullArray.slice(min, max + 1); console.log(result);

另一種選擇,只取鍵數組的末端:

 const fullArray = new Array(10); fullArray[3] = 1; fullArray[5] = 1; fullArray[7] = 1; const keys = Object.keys(fullArray); const min = keys[0]; const max = keys[keys.length - 1]; const result = fullArray.slice(min, Number(max) + 1); console.log(result);

暫無
暫無

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

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