如何使用jQuery在数组中设置条件?

时间:2019-05-22 05:49:34

标签: javascript jquery

我想使用jquery将数组自定义为某些类型

$(function(){
    var i = 1;
    $('.dataTable thead th').each(function(index) {
        var array = {
            text:$(this).text(),
            if($(this).hasClass("datepicker")) {
                type:"number"
            }
        };
    });
});

我想说的是,如果它具有类datepicker,请设置type:number 然后设置type:text

2 个答案:

答案 0 :(得分:1)

您拥有的不是数组。也许你是说

$(function() {
  var arr = [];
  $('.dataTable thead th').each(function(index) {
    arr.push({
      "type": $(this).hasClass("datepicker")?"number":"text";
    });
  });
});

$(function() {
  var arr = [];
  $('.dataTable thead th').each(function(index) {
    arr.push({
      "text": $.trim($(this).text()) || "n/a",
      "type": $(this).hasClass("datepicker")?"number":"text";
    });
  });
});

您可以使用http://api.jquery.com/map/

简化此操作

答案 1 :(得分:0)

尝试

let table= [...document.querySelectorAll('.dataTable thead th')];

table.forEach(e=> {
 let arr = {
   type: e.classList.contains('datepicker') ? 'text' : 'number',
   text: e.innerText,
 }
 console.log(arr);
});
<table class="dataTable"><thead>
  <th>A</th>
  <th class='datepicker'>B</th>
  <th>C</th>
</thead></table>