基本语法
- ECMAScript,这门“伪语言”,描述了
javascript这些基本概念
- ECMAScript中的一切(变量,函数名,操作符)都区分大小写
标识符
- 指变量名,函数名,属性名,函数的参数
- 驼峰格式:第一个字母小写,其他单词首字母大写
- 可以包括,字母,数字,下划线,美元符号
- 第一个字母,不能是数字
- 不能把关键字,保留字,用作标识符
注释
- 第二行的星号不是必须,有的话,可以增强注释的可读性
严格模式
"use strict";
- ECMAScript 5 引入
- 严格模式下:
- ECMAScript 3中的一些不确定行为将得到处理
- 对某些不安全的操作会抛出错误
- 启用严格模式:
语句
- 推荐,以分号结尾
- 也可以不以分号结尾,如此,就有解释器自行推断语句的结尾
代码块
关键字
- 有一定用途
- 不能用作标识符,如果不识趣地用了:
- 实现了ECMAScript 3的javascript引擎,会抛出
Identifier Expected错误
- 实现了ECMAScript 5的javascript引擎,也不会允许
- 有时可以用作对象的属性名,但极不推荐。
- ECMAScript 5允许的
- 非严格模式
- 严格模式,但不对该关键字设限制
| ECMAScript 的全部关键字: | (表示ECMAScript 5新增) | | |
| --- | --- |--- |--- |
| break | do | instanceof | typeof |
| case | else | new | var |
| catch | finally | return | void |
| continue | for | switch | while |
| debugger | function | this | with |
| default | if | throw | |
| delete | in | try | |
保留字
- 暂时还没有用途
- 不能用作标识符,如果不识趣地用了:
- 会不会,抛出
Identifier Expected错误,这取决于引擎
| ECMAScript 3 定义的保留字: | | | |
| --- | --- |--- |--- |
| abstract | enum | int | short |
| boolean | export | interface | static |
| byte | extends | long | super |
| char | final | native | synchronized |
| class | float | package | throws |
| const | goto | private | transient |
| debugger | implements | protected | volatile |
| double | import | public | |
| ECMAScript 5 新增的保留字: | |
|---|
| let | yield |
变量
- ECMAScript的变量用
var关键字来定义,是松散类型的。
var message;
var message = "hi";
var message = "hi",
found = false,
age = 29;
- 变量的作用域:
- 在函数中,定义
var变量:
- 在函数中,定义变量,但不加
var:
- 那么函数退出后,这个变量依然可用。
- 这是全局变量。
- 不推荐省略
var来定义全局变量。
function test() {
var message = "hi";
}
test();
alert(message);
function test() {
message = "hi";
}
test();
alert(message);