先看一下定义、声明、初始化这三个东西的概念是什么:
定义:给变量分配存储空间,并赋值
声明:说明变量类型、名称(标识)
初始化:声明变量时给变量赋值
首先看,定义的两种表示方法:
表示方法1:
var x = 1;
经常听到有人称这句代码为声明变量,但其实这句代码属于——完整的创建变量并赋值,且以变量名为独有标识向内存申请空间。
再重新看最开始的三个概念,声明只能说明变量类型、名称,初始化是在声明时候赋值,这两个都不能向内存申请分配空间,这是定义的事儿。
所以这行代码虽然进行了变量的声明(说明变量类型Number、名称x)、初始化(x=1),但是他还向内存申请了空间,所以他是定义。
可以理解为:定义 = 声明 + 申请空间(不用+初始化,不初始化也可以实现定义,后文再说)
再看这行代码: var x = 1
x 是他声明的变量名称,x=1 是他初始化的变量值,