jQuery将var组合成一个字符串

时间:2016-01-12 08:13:32

标签: jquery

所以,我有以下js:

var first = jQuery(this).data("first");     
var second = jQuery(this).data("second");  
var third = jQuery(this).data("third "); 

if(typeof first !== 'undefined' && first != ''){
   alert ("Done");
};
if(typeof second !== 'undefined' && second != ''){
   alert ("Done");
};
if(typeof third !== 'undefined' && third != ''){
   alert ("Done");
};

在这里,无论哪个变量可用,它都会显示警报,因为它们都满足条件。

为了减少冗余,我考虑制作一个包含所有三个变量的var,然后使用这个total变量来满足条件:

var first = jQuery(this).data("first"); // has character 1      
var second = jQuery(this).data("second");  // has character 2
var third = jQuery(this).data("third "); // has character 3

var total = first, second, third; ?????

if(typeof total !== 'undefined' && total != ''){
   alert ("Done");
};

因此,如果其中一个变量可用,那么它就符合条件。

当然上面的代码不起作用。有人可以帮我一把吗?谢谢一堆!

史蒂夫

5 个答案:

答案 0 :(得分:1)

使用此选项检查三个变量中是否至少有一个不为空/非空

- 或if (first && second && third)如果您希望所有三个都不为空。



var first = jQuery(this).data("first"); // has character 1      
var second = jQuery(this).data("second"); // has character 2
var third = jQuery(this).data("third "); // has character 3


if (first || second || third) {
  console.log("Done");
};

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

喜欢这个吗?

$("#list").jqGrid({
    // ...
}).bind ("jqGridViewBeforeShowForm", function (e, $form, oper) {
    alert("In jqGridViewAfterShowForm");
}).bind ("jqGridViewClickPgButtons", function (e, whichButton, $form, rowid) {
    alert("In jqGridViewClickPgButtons: " + whichButton + ", rowid=" + rowid);
}).bind ("jqGridViewAfterclickPgButtons", function (e, whichButton, $form, rowid) {
    alert("In jqGridViewAfterclickPgButtons: " + whichButton + ", rowid=" + rowid);
});

答案 2 :(得分:1)

JS Fiddle

string: 9994324.34324324343242
double: 9.99432e+006 

答案 3 :(得分:1)

另一种方法是使用数组和Array.some()来检查是否有任何一个属性符合

之类的条件
var self = this,
  flag = ['first', 'second', 'third'].some(function(item) {
    var val = jQuery(this).data(item);
    return val !== undefined && val !== '';
  });

if (flag) {
  alert("Done");
};

答案 4 :(得分:1)

如果你有太多的变量来做“OR”检查你可以这样做:

var arr = [];
arr.push(jQuery(this).data("first"));    
arr.push(jQuery(this).data("second"));
arr.push(jQuery(this).data("third"));
arr.push(jQuery(this).data("fourth"));
arr.push(jQuery(this).data("fifth"));
arr.push(jQuery(this).data("sixth"));
arr.push(jQuery(this).data("seventh"));
arr.push(jQuery(this).data("eighth"));
// add any other here

if(arr.join('').length){
    console.log('Done');
}