我遵循了this问题中的说明。
这是我的代码:
edate = new Date()
edate.setYear(edate.getFullYear() + 1);
month = edate.getMonth();
console.log(month);
console.log(month.length);
这将返回:
3
undefined
答案 0 :(得分:3)
在您从另一个问题列出的代码中,存储在month
中的值已转换为String
。可以这样做(与空String
串联会导致toString()
转换):
month = '' + edate.getMonth();
Number
值没有length
属性,但是String
有。这就是原始代码所利用的。
一种更清晰的方法(如前所述)将利用String
构造函数,该构造函数接受Number
作为输入并将其转换为String
,如下所示:
month = String(edate.getMonth());
或者,您可以直接在您身上调用toString()
返回的值,就像这样:
getMonth()