如何'null'检入javascript(node-webkit)?

时间:2016-01-19 05:26:31

标签: javascript html node-webkit

我正在开发用于比较源代码和node-webkit的窗口应用程序,我想检查null函数。

我的代码是

function click1() {
      if(swap == true)
        var lines1 = $('textarea1').val().split('\n'); //compare1
        var lines2 = $('textarea2').val().split('\n'); //compare2

        if (lines1.length == lines2.length) {
             for (var i=0;i<lines1.length;i++) {
                 if(lines1[i] == lines2[i]) {
                      var keys = lines1[i].match(/\b[\w\d]*/g);
                      if(keys[0] == null) { //**problem line**
                          alert('This line is null');
                      } else {
                          alert(keys[0]);
                      }
                 }
             }

如果我执行此点击事件,则会发生错误。

未捕获的TypeError:无法读取null

的属性“0”

我如何解决这个问题..

帮帮我

PS。我尝试了keys[0] === nulltypeof keys[0] == 'null'!keys[0]等...

4 个答案:

答案 0 :(得分:1)

只需使用:

if(keys[0]) {
  alert(keys[0]);
} else {
  alert('This line is null');
}

答案 1 :(得分:0)

它不是keys[0]空的。它的keys。查看错误,它无法读取0的属性null,这意味着它无法读取空变量0的{​​{1}}属性。您的正则表达式不匹配任何内容,因此返回keys

解决方案:

null

答案 2 :(得分:0)

array [index]为null或undefined。

if (keys[0] == 'undefined' || keys[0] == null) {
   alert('This line is null');
} else {
   alert(keys[0]);
}

array [index]为null且未定义。

if (keys[0] == 'undefined' && keys[0] == null) {
   alert('This line is null');
} else {
   alert(keys[0]);
}

答案 3 :(得分:0)

试试这个:

if(!keys || keys.length === 0) { //**problem line**
  alert('This line is null');
}else {
  alert(keys[0]);
}