因爲使用.toString()作爲空變量不起作用,並且我無法在我的特定應用程序中檢查其中的每一個。Javascript,String:獲取Javascript var作爲字符串
我知道這是一個愚蠢而簡單的問題,現在我的答案肯定是盯着我。
因爲使用.toString()作爲空變量不起作用,並且我無法在我的特定應用程序中檢查其中的每一個。Javascript,String:獲取Javascript var作爲字符串
我知道這是一個愚蠢而簡單的問題,現在我的答案肯定是盯着我。
非級聯的路線是使用字符串()構造:
var str = new String(myVar); // returns string object
var str = String(myVar); // returns string value
當然,var str = "" + myVar;
是短且容易。請注意,這裏的所有方法都會將值爲null的變量轉換爲"null"
。如果你想解決這個問題,你可以使用||
設置默認當一個變量的值是「falsey」像空:
var str = myVar || "";
只是,只要你知道和假也將導致""
在這裏。
https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/String
......怎麼樣?
var theVarAsString = "" + oldVar;
什麼
var str = (variable || "");
//or
(variable || "").toString();
當然,你會得到這樣的false
,undefined
等等,太多,但是這將是一個空字符串,而不是"null"
String(null)
返回"null"
,如果表單域的值本身爲null
,則可能會導致問題。那麼簡單的包裝函數呢?
function toString(v) {
if(v == null || v == undefined) {
return "";
}
return String(v);
}
只有null
,undefined
,和空字符串應該返回空字符串。包括整數0
在內的所有其他falsy值將返回其他值。一些測試,
> toString(null)
""
> toString(undefined)
""
> toString(false)
"false"
> toString(0)
"0"
> toString(NaN)
"NaN"
> toString("")
""
「字面意思」 - 雙關語意? – heisenberg 2010-07-15 18:51:15
例如,如果傳遞了'null'或'undefined',你期望在字符串中看到什麼。 – Anurag 2010-07-15 19:05:51