JS 变量

创建于 2024-12-03 / 28
字体: [默认] [大] [更大]

JavaScript 变量是存储数据值的容器。

在本例中,x、y 和 z 是变量,用 var 关键字声明:

实例

var x = 5;
var y = 6;
var z = x + y; 亲自试一试 »

从上例中,您可获得:

  • x 存储值 5
  • y 存储值 6
  • z 存储值 11

ECMAScript 2015

ES2015 引入了两个重要的 JavaScript 新关键词:letconst

这两个关键字在 JavaScript 中提供了块作用域(Block Scope)变量(和常量)。

在 ES2015 之前,JavaScript 只有两种类型的作用域:全局作用域函数作用域

由于描述这些关键字之间的差异有点复杂,而且旧浏览器不支持这些关键字,因此本教程的第一部分通常使用var。

Safari 10 和 Edge 14 是第一款完全支持 ES6 的浏览器:

Chrome 58 Edge 14 Firefox 54 Safari 10 Opera 55
Jan 2017 Aug 2016 Mar 2017 Jul 2016 Aug 2018

类似代数

在本例中,price1、price2 以及 total 是变量:

实例

var price1 = 5;
var price2 = 6;
var total = price1 + price2;
亲自试一试 »

在编程中,类似代数,我们使用变量(比如 price1)来存放值。

在编程中,类似代数,我们在表达式中使用变量(total = price1 + price2)。

从上例中,您可以算出 total 的值是 11。

JavaScript 变量是存储数据值的容器。


Advertisement

-->

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 = "John Doe";
var answer = 'Yes I am!'; 亲自试一试 »

声明(创建) JavaScript 变量

在 JavaScript 中创建变量被称为"声明"变量。

您可以通过 var 关键词来声明 JavaScript 变量:

var carName;

声明之后,变量是没有值的。(技术上,它的值是 undefined。)

如需赋值给变量,请使用等号:

carName = "Volvo";

您可以在声明变量时向它赋值:

var carName = "Volvo";

在上面的例子中,我们创建了名为 carName 的变量,并向其赋值 "Volvo"。

然后,我们在 id="demo" 的 HTML 段落中"输出"该值:

实例

<p id="demo"></p>

<script>
var carName = "Volvo";
document.getElementById("demo").innerHTML = carName;
</script> 亲自试一试 »

提示: 在脚本的开头声明所有变量是个好习惯!


一条语句,多个变量

您可以在一条语句中声明许多变量。

var 作为语句的开头,并以逗号分隔变量:

var person = "John Doe", carName = "Volvo", price = 200; 亲自试一试 »

声明可横跨多行:

var person = "John Doe",
carName = "Volvo",
price = 200; 亲自试一试 »

Value = undefined

在计算机程序中,被声明的变量经常是不带值的。值可以是需被计算的内容,或是之后被提供的数据,比如数据输入。

不带有值的变量,它的值将是 undefined

变量 carName 在这条语句执行后的值是 undefined:

实例

var carName; 亲自试一试 »

重复声明 JavaScript 变量

如果再次声明某个 JavaScript 变量,将不会丢它的值。

在这两条语句执行后,变量 carName 的值仍然是 "Volvo":

实例

var carName = "Volvo";
var carName; 亲自试一试 »

JavaScript 算术

与代数类似,您能够通过 JavaScript 变量进行算术运算,使用 =+ 之类的运算符:

实例

var x = 5 + 2 + 3;
亲自试一试 »

字符串也可以使用加号,但是字符串将被级联:

实例

var x = "John" + " " + "Doe"; 亲自试一试 »

Also try this:

实例

var x = "5" + 2 + 3;
亲自试一试 »

字符串也可以使用加号,但是字符串将被级联:

还可以试试这个:

实例

var x = 2 + 3 + "5";
亲自试一试 »

JavaScript $ 美元符号

请记住,JavaScript标识符(名称)必须以以下开头:

  • 字母 (A-Z 或 a-z)
  • 美元符号 ($)
  • 或者下划线 (_)

由于JavaScript将美元符号视为字母,因此包含 $ 的标识符是有效的变量名:

实例

var $$$ = "Hello World";
var $ = 2;
var $myMoney = 5;
亲自试一试 »

使用 $ 美元符号在JavaScript中并不常见,专业程序员经常将其用作JavaScript库中主函数的别名。

例如,在JavaScript库jQuery中,主函数$ 用于选择HTML元素。在 jQuery $("p"); 表示"选择所有p元素"。


JavaScript 下划线 (_)

由于 JavaScript 将下划线视为字母,因此包含下划线 (_) 的标识符是有效的变量名:

实例

var _lastName = "Johnson";
var _x = 2;
var _100 = 5;
亲自试一试 »

使用下划线在JavaScript中并不常见,但专业程序员的惯例是将其用作 "private (hidden)" 私有或隐藏变量的别名。


学习训练

练习题:

创建一个名为 carName 的变量,并为其赋值 Volvo

var  = "";

开始练习



0 人点赞过