我有一個each
函數,它將html table
的td
元素放置在對象數組中。我的問題是我只需要表格中的唯一值。這導致我的數組有重複的值。理想情況下,我希望看到Product
和valProduct
的唯一值。 。valProduct
在本質上是一樣的「Product`這裏是我的關閉嘗試:在使用.each()函數後刪除對象數組中的重複值
var array_return = [];
$(".table__product td:nth-child(1)").each(function() {
array_return.push({
"Product": $(this).html(),
"valProduct": $(this).html()
});
});
array_return.sort(function(a, b) {
return a.Product - b.Product;
});
// delete all duplicates from the array_return
for (var i = 0; i < array_return.length - 1; i++) {
if (array_return[i].Product == array_return[i + 1].Product) {
delete array_return[i];
}
}
// remove the "undefined entries"
array_return = array_return.filter(function(el) {
return (typeof el !== "undefined");
});
alert(JSON.stringify(array_return));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/core.js"></script>
<table class="table__product">
<tr>
<td>Apple</td>
<td>3384</td>
<td>iPhone</td>
</tr>
<tr>
<td>Samsung</td>
<td>8800</td>
<td>Galaxy</td>
</tr>
<tr>
<td>LG</td>
<td>8684</td>
<td>V20</td>
</tr>
<tr>
<td>Google</td>
<td>8179</td>
<td>Pixel</td>
</tr>
<tr>
<td>Blackberry</td>
<td>4554</td>
<td>Storm</td>
</tr>
<tr>
<td>Motorolla</td>
<td>6764</td>
<td>Z force</td>
</tr>
<tr>
<td>LEASING_REVENUE</td>
<td NOWRAP align=RIGHT>-2100000</td>
</tr>
<tr>
<td>LEASING_REVENUE</td>
<td NOWRAP align=RIGHT>-2095011</td>
</tr>
<tr>
<td>LEASING_REVENUE</td>
<td NOWRAP align=RIGHT>-2095010</td>
</tr>
<tr>
<td>ECS/ACH</td>
<td align=RIGHT>4493</td>
</tr>
<tr>
<td>ECS/ACH</td>
<td align=RIGHT>4494</td>
</tr>
<tr>
<td>ECS/ACH</td>
<td align=RIGHT>4495</td>
</tr>
</table>
它正在做什麼或不做,你需要改變嗎? – samanime
@ElliottFrisch我刪除了標籤,它顯然不合適 – user2314737
從這個例子發佈你想要的輸出。 –