## 标识符、注释和区块
### 1.标识符
> 标识符简单的理解就是“起名字”。在给变量、方法等定义的名称都可以理解为标识符。
标识符定义的规则:
* 第一个字符:任意的Unicode字母(包含英文字母和其他语言的字母),以及美元符号$和下划线_;
* 第二个字符及后面的字符开始可以包含0-9的数字;
```javascript
var a = ""; // 合法
var $ = ""; // 合法
var abc = ""; // 合法
var _abc = ""; // 合法
var _a$1 = ""; // 合法
var 1a = ""; // 就是不合法的标识符定义
```
> 除此之外,JavaScript使用的关键字也不能作为标识符的定义
ECMA-262 描述了一组具有特定用途的关键字。这些关键字可用于表示控制语句的开始或结束,或者用于执行特定操作等。按照规则,关键字也是语言保留的,不能用作标识符。以下就是ECMAScript的全部关键字(带*号上标的是第5 版新增的关键字):
![](https://box.kancloud.cn/b33053bebd68b0f7f3b7a4ef3ac47c80_2307x718.png)
ECMA-262 还描述了另外一组不能用作标识符的保留字。尽管保留字在这门语言中还没有任何特定的用途。但它们有可能在将来被用作关键字。以下是ECMA-262 第3 版定义的全部保留字:
![](https://box.kancloud.cn/1fe0c4529f0dd4ab08709e211f410aa6_2307x821.png)
第5 版把在非严格模式下运行时的保留字缩减为下列这些:
![](https://box.kancloud.cn/43dc12662335e17a6b4902cac1d5b661_2311x212.png)
在严格模式下,第5 版还对以下保留字施加了限制:
![](https://box.kancloud.cn/fb6c139aa043de5dfa3e88f334443995_2305x309.png)
### 2.注释
> 注释让代码的可读性增强,并可以对相关的代码提供必要的说明。JavaScript的引擎会忽略掉注释部分的代码。
注释的分类:
单行注释:` //`
多行注释:`/* */`
```javascript
/**
* 函数名称:add
* 函数作用:完成加法运算
* 参数:a:加数 b:加数
* 返回值:数值型
* 作者:Aaron
* 版本:1.0
* 时间:2017-04-17
*/
function rs2() {
// xxxxxxx
var gs = document.getElementById("gs").value;
var rss = eval(gs);
document.getElementById("rs").value = rss;
}
```
### 3.区块
JavaScript使用大括号将多行相关语句的代码包裹起来,成为区块(block)。
> 不同于其他编程语言,在区块中定义的变量,其生命周期不单在区块范围内,超出区块也能使用在区块中定义的变量。
- HTML基础
- Web原理和HTML简介
- Web原理
- HTML概念
- HTML标签
- 标签
- HTML固定基本结构
- 第一个HTML页面
- 工具的使用
- 标题
- hr和p标签
- 路径概念
- 超级链接
- 列表
- 表格
- 表单的设计与使用
- 表单域的原理
- 文本框和密码框
- 单选框和复选框
- 下拉列表框
- 多行文本和上传
- 提交按钮和重置按钮
- 为CODING COFFEE加入在线购买页
- HTML5
- 定位服务
- CSS基础
- CSS的基础使用
- CSS简介
- CSS样式规则和加载方式
- 内联元素和区块元素介绍
- 选择器
- 伪类
- CSS颜色
- 背景图片
- 文本
- CSS列表
- DIV+CSS布局
- 盒子模型的边距和边框
- Display属性
- 浮动和清除浮动
- 用Position属性进行定位
- 专题:居中和对齐
- CSS新特性
- CSS3边框
- 动画
- JavaScript基础
- Hello World!
- 语句和变量
- 一切皆对象
- 标识符、注释和区块
- 基本数据类型和引用数据类型
- 语句
- 条件语句
- 循环语句
- 数据类型
- typeof
- number
- 字符串
- 布尔类型
- 函数
- 数组
- 运算符
- 加法运算符
- 算术、赋值、比较运算符
- 布尔运算符
- DOM模型
- DOM和DOM节点
- 特征相关属性
- 节点对象的方法
- Element对象
- Attribute对象
- Text节点和CSS操作
- 事件模型
- 标准库
- Number对象
- String对象
- Array对象
- Date、Boolean和Math对象
- JSON对象
- 面向对象编程中的 this
- Web Storage
- 错误处理机制
- Error对象和try..catch语句
- javascript的原生错误类型
- BOM模型
- window对象
- 计时事件
- jQuery基础
- 认识jQuery
- jQuery对象和DOM对象
- jQuery选择器
- jQuery Dom操作
- 查找节点和创建节点
- 插入节点和删除节点
- 复制节点和替换节点
- 包裹节点和属性操作
- 样式操作
- 设置和获取HTML、文本和值
- 遍历节点和CSS操作
- jQuery 事件和动画
- 事件绑定与冒泡处理
- jQuery动画
- jQuery 插件
- validate 插件
- jQuery与Ajax的应用
- Ajax简介
- jquery中的Ajax
- Flex布局
- Flexbox介绍
- 伸缩容器属性介绍
- dispaly属性
- flex-direction属性
- flex-wrap属性
- flex-flow属性
- align-content属性
- justify-content属性
- align-items属性
- 伸缩项目属性介绍
- order属性
- grow属性
- shrink属性
- basis属性
- flex属性简写
- align-self属性
- Bootstrap基础
- 起步
- 栅格系统
- 排版样式
- 表格和按钮
- 表单和图片
- 辅助类和响应式工具
- 图标菜单按钮组件
- 输入框和导航组件
- 路径、分页、标签和徽章组件
- 巨幕、页头、缩略图和警告框
- 进度、条媒体对象和Well组件
- 列表组和嵌入组件
- Canvas
- Canvas坐标体系
- Canvas画布大小设置
- Canvas画直线
- Canvas画圆和矩形
- Canvas描边与填充
- Canvas图形变换
- Canvas线性渐变
- Canvas径向渐变
- Canvas中的文字
- Canvas图片绘制
- Canvas图形画刷
- Canvas剪辑区域
- Canvas绘制阴影
- Canvas绘制曲线
- Canvas动画
- Canvas离屏操作
- 微信小程序
- 起步
- 小程序目录
- 小程序配置
- 新建页面
- WXML
- 组件
- 视图容器
- 基础内容
- 表单组件
- button
- checkbox
- form
- input
- label
- picker
- picker-view
- radio
- slider
- switch
- textarea
- 导航
- 媒体组件
- audio
- image
- video
- camera
- live-player
- live-pusher
- 地图
- 画布
- 数据绑定
- 运算
- 组合
- 列表渲染
- 条件渲染
- 模板
- 事件
- WXSS
- JS