4、JavaScript变量

110 阅读4分钟

学习前先了解几个关键知识点

1.JS中每一个语句都应该以分号结尾;在js中有自动添加分号的机制,所以即使不写也不会报错

2.JS中严格区分大小写

3.JS分忽略多个空格换行,所以可以通过空格换行来对代码进行格式化

字面量和变量

字面量

  • 字面量就表示的是一个值,它所表示的意思就是它的字面意思,又叫常量
    • 比如:1,2,3,'hello',true
  • js 程序执行到代码中的字面量,会立即知道它是什么类型的数据,值是多少。
  • 可以用于表示固定值,比如:数字、字符串、 undefined 、布尔类型的字面值等。
    • 数值字面量: 8, 9, 10
    • 字符串字面量: '大前端'
    • 布尔字面量: true false
  • 字面量可以在js中直接使用,但通常不会直接使用,所有会有我们后面学习的变量

变量

  • 变量是用于存储信息的"容器"。
    • 变量可以用来存储字面量,一个变量可以存储在任意类型字面量
    • 我们一般都是通过变量存储字面量面不是直接使用字面量

创建一个变量

//声明一个变量
let a;
//为变量赋值
a = 10;
alert(a);

image.png image.png

  • 变量可以使用短名称(比如 xy),也可以使用描述性更好的名称(比如 age, sum, totalvolume)。

声明(创建) JavaScript 变量

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

我们使用 var 关键词来声明变量:

var carname;

变量声明之后,该变量是空的(它没有值)。

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

carname="Volvo";

也可以在声明变量时对其赋值:

var carname="Volvo";

一条语句,多个变量

可以在一条语句中声明很多变量。该语句以 var 开头,并使用逗号分隔变量即可:

var lastname="Doe", age=30, job="carpenter";

声明也可横跨多行:

var lastname="Doe",
age=30,
job="carpenter";

一条语句中声明的多个变量不可以同时赋同一个值:

var x,y,z=1;
console.log(x,y,z) //输出结果x,y 为 undefined, z 为 1。

在计算机程序中,经常会声明无值的变量。未使用值来声明的变量,其值实际上是 undefined。

在执行过以下语句后,变量 carname 的值将是 undefined:

var carname;
console.log(carname) //undefined

重新声明 JavaScript 变量

如果重新声明 JavaScript 变量,该变量的值不会丢失:

在以下两条语句执行后,变量 carname 的值依然是 "Volvo":

var carname="Volvo";
var carname;

使用 let 和 const (ES6)

ES2015(ES6) 新增加了两个重要的 JavaScript 关键字: let 和 const

let 声明的变量只在 let 命令所在的代码块内有效。

const 声明一个只读的常量,一旦声明,常量的不能改变

在 ES6 之前,JavaScript 只有两种作用域: 全局变量 与 函数内的局部变量

浏览器支持

Internet Explorer 11 及更早版本的浏览器不支持 let 关键字,IE更早版本兼容使用var

下表列出了各个浏览器支持 let 关键字的最低版本号。

image.png

标识符

  • 在程序中所有的可以自主命名的内容老早了可以认为是标识符
    • 比如:变量函数属性、函数参数
  • 标识符需要遵循如下规范:
    • 标识符必须以字母开头
    • 标识符也能以 $ 和 _ 符号开头(不过我们不推荐这么做)
    • 标识符名称对大小写敏感(y 和 Y 是不同的变量)
    • 标识符不能以数字开头
    • 按照惯例,ECMAScript 标识符采用驼峰命名法
    • 但是要注意的是JavaScript中的标识符不能是关键字保留字,不需要记,使用的时候会报错。

JavaScript 保留关键字

Javascript 的保留关键字不可以用作变量、标签或者函数名。有些保留关键字是作为 Javascript 以后扩展使用。

image.png

JavaScript 对象、属性和方法

您也应该避免使用 JavaScript 内置的对象、属性和方法的名称作为 Javascript 的变量或函数名:

image.png

Java 保留关键字

JavaScript 经常与 Java 一起使用。您应该避免使用一些 Java 对象和属性作为 JavaScript 标识符:

image.png

Windows 保留关键字

JavaScript 可以在 HTML 外部使用。它可在许多其他应用程序中作为编程语言使用。

在 HTML 中,您必须(为了可移植性,您也应该这么做)避免使用 HTML 和 Windows 对象和属性的名称作为 Javascript 的变量及函数名:

image.png

HTML 事件句柄

除此之外,您还应该避免使用 HTML 事件句柄的名称作为 Javascript 的变量及函数名。

image.png