簡體   English   中英

Javascript - 控制台中顯示未定義的變量

[英]Javascript - Undefined var showing up in console

可能是一個簡單的問題,但我不確定要搜索什么才能找到答案。

在通過 Eloquent Javascript 工作時,以下內容:

var size = 8;
var board;

for (var y = 0; y < size; y++) {
  for (var x = 0; x < size; x++) {
    if ((x + y) % 2 == 0)
      board += " ";
    else
      board += "X";
  }
  board += "\n";
}
console.log(board);

生產

undefined x x x x
x x x x 
 x x x x
x x x x 
 x x x x
x x x x 
 x x x x
x x x x 

如果我將 board 變量更改為var board = ""; 這不會發生。

我不明白為什么,有人能指教我嗎?

我在 jfiddle.net 中運行它,並使用https://getfirebug.com/firebug-lite-debug.js設置外部資源(以獲取控制台)。

您將字符串值添加到未定義的變量中。 它只是被聲明為未初始化,因此您必須在使用它之前通過設置等於“”來初始化該變量。

添加到這個答案。 每當一個變量被聲明但未初始化時,它默認設置為 undefined,這表示它沒有被任何值初始化。 這就是為什么當您第一次向其中添加字符串時,它會附加到未定義的值。 取而代之的是,如果您用 "" 初始化變量,它將被初始化為一個空字符串,然后當您添加字符串值時,它會產生您正在尋找的結果。

暫無
暫無

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

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