var id = id++;
console.log(id);
我只是想知道为什么这不起作用?我把它放在一个函数中,我希望它从 2 开始,然后递增 1 1。但是在控制台中,我看到的是NaN。为什么?
除非你初始化一个变量(=给它分配一些值(,否则它的值是undefined
的,undefined++
不是数字(NaN
(。
id
是undefined
,undefined++
是NaN。
您正在使用以前未定义的变量,因此 NaN 是答案。
您没有为id
分配任何值。
您需要初始化它。
尝试:
var id = 1;
id++;
console.log(id);
你不是说吗?
var id = 1;
id++;
console.log(id);
不能递增尚未定义的内容。所以未定义的++是NaN。
问题是你没有为"id"变量分配一个值,所以首先你需要声明和初始化一个变量,然后你可以操纵它的值。
var id;//declare
id = 1;初始化;
id += 1 或 id++//操作它(用 1 递增值(;
或更短:
var id = 1;
id++;