2

我不时在代码中使用它。我想知道这是一个空字符还是类似的东西?

console.log("")返回undefined

typeof ""返回string.

Object.prototype.toString.call("")返回字符串。

空字符串如何用 ascii 或 unicode 表示?这是更大的问题。

4

2 回答 2

5

console.log不返回任何东西,所以它的返回值总是undefined. 在这方面,空字符串没有什么特别之处。

空字符串不包含空字符或类似内容。它根本不包含任何字符。你可以把它想象成一个空数组。它只是一个容器(在某种意义上),可以包含任意数量的字符,但恰好是空的。

于 2013-11-05T16:43:38.553 回答
4

console.log("");return undefined,但这是因为log总是undefined在控制台中未定义的上方应该有一个空行,这是记录的空字符串。如果你改用,这个空日志会更明显,因为它会有一个警告标志。returnconsole.warn

仍然是 unicode/ascii 中的表示形式

空字符串的长度为零字节。这意味着它在这些中没有任何表示,除了您想要描述它的微不足道的空洞。它将以虚假的方式表现。

if ("") 1;
else 0;
// gives 0

如果您将字符表示为Bytes数组,例如使用Uint8Array,则

var emptyString = new Uint8Array(0); // length 0
emptyString; // []
于 2013-11-05T16:43:27.320 回答