但是突然遇到雙驚嘆號的寫法,查完網路上面的資料才發現它可以用來判斷空字串等。
首先使用以下程式碼驗證:
HTML
<div class="a"></div> <div class="b"></div> <div class="c"></div> <div class="d"></div> <div class="e"></div> <hr/> <div class="a2"></div> <div class="b2"></div> <div class="c2"></div> <div class="d2"></div>JavaScript
var a = null;
var b = 0;
var c = "";
var d = undefined;
var e;
$(".a").text(!!a);
$(".b").text(!!b);
$(".c").text(!!c);
$(".d").text(!!d);
$(".e").text(!!e);
var a2 = !null;
var b2 = 1;
var c2 = "c2";
var d2 = !undefined;
$(".a2").text(!!a2);
$(".b2").text(!!b2);
$(".c2").text(!!c2);
$(".d2").text(!!d2);
由以上範例驗證出單驚嘆號:!參數 回傳若是 無值、0、空、空字串,會被轉為true,
!參數 蕤傳若是 有值、1、非空、非空字串,會被轉為false。
相反的雙驚歎號則是:
!!參數 回傳若是 無值、0、空、空字串,會被轉為false,
!!參數 蕤傳若是 有值、1、非空、非空字串,會被轉為true。
沒有留言:
張貼留言