簡體   English   中英

如何使用javascript檢查var是否為空?

[英]how to check if var is not empty with javascript?

沒有太多運氣。 我正在嘗試確定var是否為空。

$('#content').mouseup(function() {

    var selection = getSelected();

    if (typeof(selection) !=='undefined') {
        alert(selection);
    }
});

這樣做是抓取用戶選擇的任何文本 - 但它顯示一個空警報,即使用戶只是在div上鼠標。

說啊:

if (selection) {
    alert(selection);
}

如果定義了成員,非空,非假,非空字符串或非零,則Javascript中的簡單true / false測試返回true。

此外,在Javascript中,某些東西可以等於undefined的值或實際上未定義的值(意思是,不存在這樣的命名對象)。 例如

var x = undefined;
alert(x===undefined); /* true; */
alert(x); /* false */
x=1;
alert(x); /* true */

alert(y===undefined); /* reference error - there's nothing called y */
alert(y); /* reference error */
alert(typeof y === "undefined"); /* true */

正如下面的評論所指出的,如果您不確定是否存在某些內容,則應首先使用typeof測試。

您的代碼對於檢測未定義的值非常准確,這意味着即使沒有選擇,該函數也會返回某種值。

如果函數返回一個選擇對象(如window.getSelection函數),則檢查isCollapsed屬性以查看選擇是否為空:

if (!selection.isCollapsed) ...

你可以簡單地使用:

if (selection) {
  alert(selection);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM