2017-06-01 33 views
0

""的char代碼是\u0000確定用javascript解析的空字符串的等同性String.fromCharCode()

String.fromCharCode("\u0000"); //=> "" 

然而,出於某種原因,在JavaScript解析這是一個字符串,它是不等於""

String.fromCharCode("\u0000") == ""; //=> false 
String.fromCharCode("\u0000") === ""; //=> false 

因此,如果您不能使用=====,你如何確定解析空字符串和實際空字符串平等?

+0

'fromCharCode'取一個'Number', 'String.fromCharCode(32)==='''。另外,\ u0000是零。 – hola

+0

我想你已經知道\ u0000是零,我的不好。 – hola

回答

0

String.fromCharCode("\u0000")不返回空字符串。你可以用String.fromCharCode("\u0000").length看到這個,它返回1,而不是0就像"".length

它返回一個字符串,其中包含1個字符,其代碼爲0。這個字符不會打印任何東西,所以字符串看起來是空的,但它不是;它包含一個不可見的字符。這就是爲什麼它不等於""