[英]Can someone explain to me why this var is undefined?
我一直在嘗試這個簡單的代碼。
var d = new Date();
x = ["Sunday","Monday","Tuesday", "Wednsday", "Friday", "Saturday", "Sunday"];
d.getDay();
document.getElementById("demo").innerHTML = "Today is " + x[d];
但它不起作用。 它說今天未定義
相反,它像這個document.getElementById("demo").innerHTML ="Today is " x[d.getDay()];
但為什么?
您在d.getDay()
使用的方法Date#getDay返回天數,但不會更改d
,它仍然是日期對象。 要使用getDay()
方法返回的值,您需要將結果賦給一個變量,或者直接使用它,就像在x[d.getDay()];
所做的那樣x[d.getDay()];
.
因為您使用對象d
使用括號表示法[]
來訪問不存在的數組索引,所以結果是undefined
。
因為,您實際上並不需要日期,只需將日期直接分配給d
:
var d = new Date().getDay()
例子:
var d = new Date().getDay(); var x = ["Sunday", "Monday", "Tuesday", "Wednesday", "Friday", "Saturday"]; document.getElementById("demo").innerHTML = "Today is " + x[d];
<div id="demo"></div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.