变量的定义

一 概念

 1、ES5定义变量

```js
var num = 10;  // 无块级作用域变量
num = 10;  // 全局变量
```

2、ES6定义变量

```js
let num = 10;  // 局部变量
const NUM = 10;  // 常量
```

3、变量(标识符)的命名规范

- 由字母,数字,_,$组成,不能以数字开头(可以包含中文字符)
- 区分大小写
- 不能出现关键字及保留字

|           |           |            |           |              |
| --------- | --------- | ---------- | --------- | ------------ |
| abstract  | arguments | boolean    | break     | byte         |
| case      | catch     | char       | class\*   | const        |
| continue  | debugger  | default    | delete    | do           |
| double    | else      | enum\*     | eval      | export\*     |
| extends\* | false     | final      | finally   | float        |
| for       | function  | goto       | if        | implements   |
| import\*  | in        | instanceof | int       | interface    |
| let       | long      | native     | new       | null         |
| package   | private   | protected  | public    | return       |
| short     | static    | super\*    | switch    | synchronized |
| this      | throw     | throws     | transient | true         |
| try       | typeof    | var        | void      | volatile     |
| while     | with      | yield      |           |              |

二 代码示范

<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>变量的定义</title>
</head>
<body>
变量的定义
</body>
<script>
// script标签内,代表js,采用的是js语法

// 1.简单规范
// 单行注释
/*
多行注释
*/

// 语句以分号结尾

// 2.变量的定义: 声明 + 初始化

// ES5变量的定义

// 注:ES5标准下无块级作用域,只有方法可以产生实际的局部作用域
// 无块级作用域的局部变量
var a = 10;
// alert(a);
// 全局变量
b = 20;
// alert(b);

// eg:验证
// 方法的自调用,就会产生一个局部作用域
(function () {
var x = 10;
y = 20;
})()

// alert(x) 报错,x只能在局部作用域中使用
// alert(y); 正常使用


// 块级作用域
{
var n = 10; // 无视块级作用域
m = 20; // 全局变量,更无视块级作用域
}
// alert(n) // 可以
// alert(m) // 可以


// ES6变量的定义

// 有块级作用域的局部变量
let aa = 100;
// alert(aa);
// 有块级作用域的常量
const bb = 200;
// alert(bb);

{
let xx = 100;
const yy = 200;
}
// alert(xx); // 无法访问
// alert(yy); // 无法访问
// 函数产生的局部作用域同该情况

let nn = 100;
nn = 200;
// alert(nn); // 200

// 命名规范:常量名全大写
const MM = 1000;
// MM = 2000; // 常量值不允许更改
// alert(MM);

// 3.变量名的命名规范
// ① 可以由字母,数字,_,$组成,但是不能以数字开头(可以包含中文,采用驼峰命名法)
// ② 区分大小写
// ③ 不能与关键字保留字重名

</script>
</html>

 
posted @ 2018-10-11 15:55  不沉之月  阅读(185)  评论(0编辑  收藏  举报