JavaScript 变量

时间:2019-08-20 13:50:43  来源:igfitidea点击:

JavaScript数据类型

JavaScript允许我们使用三种基本数据类型

  1. 数字, 例如: 123年,120.50。
  2. 文本字符串,例如:"这个字符串"。
  3. 布尔值,例如:true或者false。

JavaScript还定义了两种普通数据类型,nullundefined

此外,JavaScript还支持称为对象的复合数据类型。
我们将在单独的一章中详细介绍对象

注意:JavaScript不区分整数值和浮点值。JavaScript中的所有数字都表示为浮点值。

JavaScript变量

和许多其他编程语言一样,JavaScript也有变量。
变量可以看作是有名字的容器。
我们可以将数据放入这些容器中,然后通过容器的名字引用数据。

JavaScript是无类型语言。
就是说JavaScript变量(容器)可以保存任何数据类型的值。

JS 变量声明

在使用变量之前,必须声明它。
变量用var关键字进行声明,如下所示。

<script type = "text/javascript">
      var money;
      var name;
</script>

可以同时声明多个变量:

<script type = "text/javascript">
      var money, name;
</script>

在ES6(ECMAScript 6)中,我们可以使用let来声明变量

let variable_name;

JS变量初始化

将值存储到变量中的过程称为变量初始化

  1. 可以在变量创建时进行变量初始化,
  2. 也可以在稍后用到该变量时再进行初始化。
<script type = "text/javascript">
      var name = "Ali"; // 声明时初始化
      var money;
      money = 2000.50;  // 用到时初始化
</script>

注意:var关键字仅用于声明或初始化,在文档中任何变量名的生命周期中只能使用一次。
不能重复两次声明相同的变量。

与许多其他语言不同,我们不必在声明变量时告诉JavaScript该变量将保存什么类型的值。
变量的值类型可以在程序执行期间改变,JavaScript会自动处理它。

JavaScript变量作用域

变量的作用域是程序中定义变量的范围。
JavaScript变量只有两个作用域。

全局变量(global)——全局变量具有全局作用域,这意味着它可以在JavaScript代码的任何地方定义。
局部变量(local)——局部变量只能在函数定义的地方可见。

函数参数始终是该函数的局部参数(局部变量)。

在函数体中,具有相同名称的局部变量优先于全局变量。

如果将局部变量或函数参数声明为与全局变量同名,则可以有效地隐藏全局变量。
请看下面的例子:

<html>
   <body onload = checkscope();>   
      <script type = "text/javascript">
            var myVar = "全局";
            function checkscope( ) {
               var myVar = "局部"; // 名字和全局变量相同
               console.log(myVar);  // 在 checkscope函数中,优先使用局部变量
            }
      </script>     
   </body>
</html>

JavaScript变量名

在给变量命名时,请记住以下规则。

  1. 不能使用保留关键字作为变量名。
  2. 不能以数字(0-9)开头。
  3. 必须以字母或下划线开头。 (123abc是一个无效的变量名,而_123abc是一个有效的变量名。)
  4. JavaScript变量名是区分大小写的。 (Name和name是两个不同的变量。)

JavaScript的保留字(关键字)

下表是JavaScript中所有保留关键字。

它们不能用作函数名,变量名,方法名。

abstractelse
booleanenum
breakexport
byteextends
casefalse
catchfinal
charfinally
classfloat
constfor
continuefunction
debuggergoto
defaultif
deleteimplements
doimport
doublein