一、函数表达式
// 普通函数允许先调用后定义,函数表达式不行
// 普通函数的函数名可以重复,后面的定义的同名函数覆盖前面的,函数表达式不行
// 代码块内的普通函数全局可见,函数表达式只有在代码块中可见
无论如何,函数最后都是一个值。
“回调函数”:函数参数中,有以函数形式出现的参数值,这个参数值称为“回调函数”。
首先考虑函数声明语法,
二、箭头函数
1、舍去“function”关键词,在参数和代码块之间添加“=>”
2、如果代码块只有一条语句,花括号{}省略不写
3、如果代码块只有一条return语句,花括号{}和return都可以不写
4、如果函数只有一个参数,参数的()可以不写
5、如果没有参数,括号则是空的(但括号必须保留)
例:de = num => num + 'what';
三、对象
带有可选 属性列表 的花括号 {…}
来创建对象
let
user =
{
}
;
// “字面量” 的语法
我们可以在创建对象的时候,立即将一些属性以键值对的形式放到 {...}
中。
let user = {
name:“xuchuang”, age:20
}
生成的 user
对象可以被想象为一个放置着两个标记有 “name” 和 “age” 的文件的柜子。
使用点符号访问属性值,使用【】访问多词属性
alert
(
user.
name )
读取文件的属性;
可以用 delete
操作符移除属性
字词语来作为属性名,必须给它们加上引号
属性名跟变量名一样,可以用 name
来代替 name:name
let
user =
{
name:
"John"
,
age:
30
}
;
alert
(
"age"
in
user );
// true,user.age 存在
“in”判断age
属性是否存在;
for...in 循环(遍历函数)
for
(let
key in
object )
{
// 对此对象属性中的每个键执行的代码
}
所有的 “for” 结构体都允许我们在循环中定义变量