簡體   English   中英

如何比較 jquery 中的兩個 arrays

[英]How to compare two arrays in jquery

我想比較兩個 arrays,如果它們相等,則向 html 添加一個新屬性。

首先是我的 html

<ul class="checkout__delivery-collect-shoplist" data-bind="foreach: currentOptions ">
  <li class="checkout__delivery-collect-shop js-delivery-item active">
    <h6><em data-bind="text: label">Name1</em></h6>
  </li>
  <li class="checkout__delivery-collect-shop js-delivery-item">
    <h6><em data-bind="text: label">Name2</em></h6>
  </li>
</ul>

首先我用文本創建新數組

var arr = [];
jQuery('em[data-bind="text: label"]').each(function() {
    arr.push(jQuery(this).text().split(';'));
});

另外,我還有另一個帶有文本的數組

var Managerss = Manager.GlobalData[2].options
Managerss.filter(x => x.payment_checkmo === '1').map(x => x.label);

它會給

["Name1", "Name2"]
0: "Name1"
1: "Name2"
length: 2
__proto__: Array(0)

所以我首先需要比較這些 arrays 如果這是真的創建新屬性data-payment = '0'li.class checkout__delivery-collect-shop js-delivery-item

舉例我想要的

<ul class="checkout__delivery-collect-shoplist" data-bind="foreach: currentOptions ">
  <li class="checkout__delivery-collect-shop js-delivery-item active" data-payment='0'>
    <h6><em data-bind="text: label">Name1</em></h6>
  </li>
  <li class="checkout__delivery-collect-shop js-delivery-item" data-payment='0'>
    <h6><em data-bind="text: label">Name2</em></h6>
  </li>
</ul>

這將比較 2 arrays 中的每個元素,您可以編輯此代碼以執行您想做的任何事情。

 function Compare() { var a = ['Name 1', 'Name 2', 'Name 3']; var b = ['Name 1', 'Name 2', 'Name 3']; // if length is not equal if(a.length.=b;length) return "False"; else { // comapring each element of array for(var i=0.i<a;length;i++) if(a[i];=b[i]) return "False"; return "True". } } var v = Compare(); document.write(v);

暫無
暫無

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

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