语法
区分大小写
变量、函数名、操作符,都区分大小写。
标识符
变量、函数、属性或函数参数的名称。
标识符可以由一或多个下列字符组成:
❑ 第一个字符必须是一个字母、下划线(\_)或美元符号(\$);
❑ 剩下的其他字符可以是字母、下划线、美元符号或数字。
注释
单行 //
多行/* */
严格模式
"use strict";
语句
末尾加分号;
控制语句写在代码块中
关键字 保留字
es6 关键字
break do in typeof case else instanceof var catch
export new void class extends return while const
finally super with continue for switch yield debugger
function this default if throw delete import try
es6 保留字
始终保留: enum
严格模式下保留: implements package public interface protected static let private
模块代码中保留: await
变量
js 变量类型是松散的,变量可以用于保存任何类型的数据,变量是一个用于保存任意值的占位符。
有三个关键字可以声明变量: var (所有版本) const let (es6 及之后的版本)
数据类型
操作符
一元操作符
只操作一个值的操作符。
语句
使用一个或多个关键字完成既定的任务。
if
if(condition)statement else statement
condtion 可以是任何表达式,js会自动调用Boolean()函数将表达式的值转为布尔值。
statement 可以是一行代码,也可以是一个代码块。
do-while
后测循环语句,循环体内的代码执行后,才会对退出条件进行求值(循环体内的代码至少执行1次)。
while
先测循环语句。
for
先测循环语句,增加了初始化代码、循环执行后要执行的表达式。
初始化、条件表达式、循环后表达式都不是必需的。
for-in
严格的迭代语句,用于枚举对象中的非符号键属性。
for-in 语句不能保证返回对象属性的顺序。
key 为 null 或 undefined 不执行循环体。
for-of
按照可迭代对象的next方法产生的值顺序迭代元素。
标签语句
label :statement。
break continue
break 推出循环 执行循环后的语句;
continue 执行下一次循环;
return 退出函数。
with
将作用域设置为指定对象。
switch
流控制语句。
不写break 会有穿透行为。
函数
函数可以封装语句,随时随地调用,js中的函数使用function关键字声明,后跟参数、函数体。
funtion fn(arg){}
可以通过函数名调用函数,参数放在()里。
js中函数不需要指定是否返回值。任何函数在任何时间都可以使用return返回函数值,用法是 return 后跟要返回的值。
只要碰到return语句,函数就会立即停止执行并退出,return 之后的语句并不会执行。
return语句可以不带返回值,用于提前终止函数执行。