JavaScript 变量是存储数据值的容器. 通过变量可以存储一段数据, 通俗的讲, 就是将数据存储在变量中.
大家知道, 数据都是存储在计算机内存中, 怎么可能存储在一个变量中.
事实上, 变量是一个引用内存地址, 且名字简短易懂的引用占位符, 方便引用修改数据.
JavaScript 变量
在本例中, x,y 和 z 是变量:
- var x = 7;
- var y = 8;
- var z = x + y;
在 JavaScript 中, 这些字母被称为变量.
从上例中, 您可获得:
x 存储值 7
y 存储值 8
z 存储值 15
提示: JavaScript 变量是存储数据值的容器.
JavaScript 标识符
所有 JavaScript 变量必须以唯一的名称的标识.
这些唯一的名称称为标识符.
标识符可以是短名称(比如 x 和 y), 或者更具描述性的名称(age,sum,totalVolume).
构造变量名称 (唯一标识符) 的通用规则是:
名称可包含字母, 数字, 下划线和美元符号
名称必须以字母开头
名称也可以 $ 和 _ 开头(但是在本教程中我们不会这么做)
名称对大小写敏感(y 和 Y 是不同的变量)
保留字 (比如 JavaScript 的关键词) 无法用作变量名称
提示: JavaScript 标识符对大小写敏感.
赋值运算符
在 JavaScript 中, 等号 (=) 是赋值运算符, 而不是 "等于" 运算符.
这一点与代数不同. 下面的代码在代数中是不合理的:
x = x + 5
然而在 JavaScript 中, 它非常合理: 把 x + 5 的值赋给 x.
(计算 x + 5 的值并把结果放入 x 中. x 的值递增 5.)
注释: JavaScript 中的 "等于" 运算符是 ==.
JavaScript 数据类型
JavaScript 变量可存放数值, 比如 100, 以及文本值, 比如 "Bill Gates".
在编程中, 文本值被称为字符串.
JavaScript 可处理多种数据类型, 但是现在, 我们只关注数值和字符串值.
字符串被包围在双引号或单引号中. 数值不用引号.
如果把数值放在引号中, 会被视作文本字符串.
实例
- var pi = 3.14;
- var person = "Bill Gates";
- var answer = 'How are you!';
声明(创建) JavaScript 变量
在 JavaScript 中创建变量通常称为 "声明" 变量.
我们使用 var 关键词来声明变量:
var carname;
变量声明之后, 该变量是空的(它没有值).
如需向变量赋值, 请使用等号:
carname="Volvo";
不过, 您也可以在声明变量时对其赋值:
var carname="Volvo";
在下面的例子中, 我们创建了名为 carname 的变量, 并向其赋值 "Volvo", 然后把它放入 id="demo" 的 html 段落中:
- var carname="Volvo";
- document.getElementById("demo").innerHTML=carname;
一个好的编程习惯是, 在代码开始处, 统一对需要的变量进行声明.
一条语句, 多个变量
您可以在一条语句中声明很多变量. 该语句以 var 开头, 并使用逗号分隔变量即可:
var lastname="Doe", age=30, job="carpenter";
声明也可横跨多行:
- var lastname="Doe",
- age=30,
- job="carpenter";
一条语句中声明的多个不可以赋同一个值:
var x,y,z=1;
x,y 为 undefined, z 为 1.
Value = undefined
在计算机程序中, 经常会声明无值的变量. 未使用值来声明的变量, 其值实际上是 undefined.
在执行过以下语句后, 变量 carname 的值将是 undefined:
var carname;
重新声明 JavaScript 变量
如果重新声明 JavaScript 变量, 该变量的值不会丢失:
在以下两条语句执行后, 变量 carname 的值依然是 "Volvo":
- var carname="Volvo";
- var carname;
JavaScript 算数
您可以通过 JavaScript 变量来做算数, 使用的是 = 和 + 这类运算符:
实例
y=5; x=y+2;
您将在本教程稍后的章节学到更多有关 JavaScript 的基础知识.
专注全栈大前端, 爱前端整理了一批最新 web 前端教学视频, 不论是零基础学习还是在职提升, 这些资料都会给你带来帮助, 爱前端帮助所有想要学好前端的同学, 学习规划, 学习路线, 学习资料, 问题解答. Web 全栈前端技术交流群: 137503198
来源: http://www.jianshu.com/p/b17f171b6079