定义变量
var
let
const
定义方法
// 声明式方法定义
function name(params){
return
}
// 匿名函数定义
(function(){
return
})
// 箭头函数(箭头函数可以省略return)
(params) => {
}
// 一个参数的箭头函数可以省去参数的括号
params => {
}
// 如果函数只包含一行 return 语句,也可以省略圆括号和 return 关键字,隐式地返回表达式
// originals.map(item => item * 2)
param => param +2
// 对象的成员方法
const Object = {
// 已匿名函数的方式申明
xxx: function(){
return
}
// 简略写法(只能在成员函数声明时使用)
name(){
}
}
箭头函数不能直接声明,一般作为函数参数处理逻辑的返回值,不单独使用,也可以省略return。
不写return会怎样
对象访问
// 点表示法
person.age;
person.name.first;
// 关联数组表示法
person["age"];
person["name"]["first"];
// 类声明
class Person {
name;
constructor(name) {
this.name = name;
}
introduceSelf() {
console.log(`Hi! I'm ${this.name}`);
}
}
// 类继承
class Professor extends Person {
teaches;
constructor(name, teaches) {
super(name);
this.teaches = teaches;
}
introduceSelf() {
console.log(
`My name is ${this.name}, and I will be your ${this.teaches} professor.`,
);
}
grade(paper) {
const grade = Math.floor(Math.random() * (5 - 1) + 1);
console.log(grade);
}
}
this和new
关键字 this 指向了当前代码运行时的对象,在js万物皆对象。
关键字new用于构造一个新的对象,并未改对象绑定一个this。
对象原型
静态方法
- Object对象方法
// 获取对象的所有属性返回数组
Object.keys()
let a5 = new CreateObj2("wangwu",24,"北京")
let keys = Object.keys(a5)
console.log(keys)
let values = Object.values(a5)
console.log(values)
[ 'name', 'age', 'addr' ]
[ 'wangwu', 24, '北京' ]
// 对象的拷贝,将一个对象的属性拷贝到另一个对象
Object.assign(a6,a5)
- Array数组方法
- String字符串方法