编辑这个页面须要登录或更高权限!

JavaScript 变量

变量用于存储数据,例如文本字符串,数字等。

标准JavaScript中的变量没有附加类型,任何值都可以存储在任何变量中。

可以在需要时设置,更新和检索存储在变量中的数据或值。通常,变量是值的符号名称。

您可以使用var关键字创建变量,而赋值运算符(=)用于为变量赋值。

在此示例x,y和z是变量:

var x = 20;
var y = 30;
var z = x + y;
测试看看‹/›

JavaScript标识符

所有JavaScript变量必须使用唯一的名称标识。

这些唯一的名称称为标识符。

这些是命名JavaScript变量的以下规则:

  • 变量名称必须以字母,下划线(_)或美元符号($)开头

  • 变量名称不能以数字开头

  • 变量名称只能包含字母数字字符(A-z,0-9)和下划线

  • 变量名称不能包含空格

  • 变量名称不能是JavaScript关键字或JavaScript保留字

注意: JavaScript标识符区分大小写。

声明JavaScript变量

在JavaScript中创建变量称为“声明”变量。

您使用var关键字声明一个JavaScript变量:

var city;

声明后,变量为undefined(无值)。

要将值赋给变量,请使用等号:

city = "New Delhi";

您还可以在声明变量时为其赋值:

var city = "New Delhi";

在下面的示例中,我们创建一个名为city的变量,并为其分配值“ New Delhi”。

然后,我们在id="para"的段落中显示值:

<p id="para"></p>

<script>
var city = "New Delhi";
document.getElementById("para").innerHTML = city; 
</script>
测试看看‹/›

一次声明多个变量

您还可以声明多个变量并在单个语句中设置其初始值。每个变量都用逗号分隔。

var x = 10, y = 15, z = 5;
测试看看‹/›

声明可以跨越多行:

var x = 10,
y = 15,
z = 5;
测试看看‹/›

JavaScript变量重新赋值

您可以将值重新赋值给JavaScript变量。

var x = 10;
document.writeln(x);

x = 50;
document.writeln(x);

x = "Helo world";
document.writeln(x);
测试看看‹/›

重新声明JavaScript变量

如果您重新声明一个JavaScript变量,它将不会丢失其值。

执行以下语句后,变量城市仍将具有值“ New Delhi”:

var city = "New Delhi";
var city;
测试看看‹/›

JavaScript数据类型

JavaScript变量可以包含数字(如123)和文本值(如“ Hello World”)。

JavaScript可以处理多种类型的数据,但是现在,仅考虑数字和字符串。

JavaScript不会区分整数值和浮点值。

字符串用双引号或单引号引起来。数字不带引号。

如果在引号中加上数字,它将被视为文本字符串。

const PI = 3.14;
var msg = "Hello World";
var city = 'New Delhi';
测试看看‹/›

在本教程的后面,您将学到更多关于数据类型的信息。

let和const关键字

ES6引入了两个新关键字letconst用于声明变量。

let允许你声明了在作用域上不限于所述块,语句,或在其上使用的表达变量。

块作用域定义意味着在一对大括号之间创建新的作用域{...}。

var y = 20;
// y在这里是 20
{
  let y = "world";  // y在这里是  "world"
}
// y在这里是  20
测试看看‹/›

const关键字声明一个只读的命名常量。

常量的值不能通过重新分配而更改,也不能重新声明。

常量是块范围的,非常类似于使用let关键字定义的变量。

const MY_AGE = 120;
测试看看‹/›

JavaScript 未定义

undefined值表示尚未为变量分配值,或者根本没有声明变量。

执行以下语句后,变量city将具有值undefined

var city;
测试看看‹/›

JavaScript变量作用范围

变量的范围是程序在其中定义的区域。JavaScript变量只有两个范围。

  • 全局变量 - 全局变量具有全局作用域,这意味着可以在JavaScript代码中的任何位置定义它。

  • 局部变量 - 局部变量仅在定义它的函数中可见。

在函数体内,局部变量优先于具有相同名称的全局变量。如果声明与全局变量同名的局部变量或函数参数,则可以有效地隐藏全局变量。

var myVar = "global";  // 声明一个全局变量

function checkScope() {
   var myVar = "local"; // 声明局部变量
   document.getElementById("para").innerHTML = myVar;
}
测试看看‹/›

您将在本教程的后面部分了解有关变量作用域的更多信息。

JavaScript保留字

下表列出了JavaScript中所有保留字的列表。

它们不能用作JavaScript变量,函数,方法或任何对象名称。

abstractelseinstanceofswitch
booleanenumintsynchronized
breakexportinterfacethis
byteextendslongthrow
casefalsenativethrows
catchfinalnewtransient
charfinallynulltrue
classfloatpackagetry
constforprivatetypeof
continuefunctionprotectedvar
debuggergotopublicvoid
defaultifreturnvolatile
deleteimplementsshortwhile
doimportstaticwith
doubleinsuper

JavaScript菜鸟教程
JavaScript 对象
JavaScript 函数
JS HTML DOM
JS 浏览器BOM
AJAX 菜鸟教程
JavaScript 参考手册