js中经常看到‘!!’的作用

var o={flag:true};  var test=!!o.flag;//等效于var test=o.flag||false;  alert(test);

由于对null与undefined用!操作符时都会产生true的结果,
所以用两个感叹号的作用就在于,
如果明确设置了o中flag的值(非 null/undefined/0""/等值),自然test就会取跟o.flag一样的值;
如果没有设置,test就会默认为false,而不是 null或undefined。

var keyValue = $.request("keyValue");

$(function () {
  initControl();
  gridList();

  //当前判断keyValue如果不等于null/undefined/0/""/等值就执行下面的逻辑

  if (!!keyValue) {
    $.ajax({
      url: "/ArchivesManage/Manage/GetFormJson",
      data: { keyValue: keyValue },
      dataType: "json",
       async: false,
      success: function (data) {
      $("#form1").formSerialize(data);
    }
  });
}
});

 
posted @ 2017-08-04 14:51  无边落木  阅读(2856)  评论(0编辑  收藏  举报