程序员书籍笔记 程序员书籍笔记
  • HTML
  • CSS
  • JavaScript
  • 前端知识
  • Vue
  • MarkDown
  • git
  • Node.js
  • Linux
  • 51单片机
  • 四级
  • 第一学期课程
  • 操作系统
  • 计算机网络
  • 数据结构
  • 计算机组成原理
  • HTML5
  • Electron
  • 日记便签
  • 前端导航
GitHub (opens new window)
  • HTML
  • CSS
  • JavaScript
  • 前端知识
  • Vue
  • MarkDown
  • git
  • Node.js
  • Linux
  • 51单片机
  • 四级
  • 第一学期课程
  • 操作系统
  • 计算机网络
  • 数据结构
  • 计算机组成原理
  • HTML5
  • Electron
  • 日记便签
  • 前端导航
GitHub (opens new window)
  • HTML

  • CSS

  • JavaScript

    • es6

      • es6基础
      • es5的扩展
      • let和const命令
    • 基础
    • 运算符和数组
    • 函数
    • 对象和类型
    • 数据类型
    • js接口
    • DOM案例
    • 节点操作
    • BOM接口
    • 页面操作
    • 动画和轮播图
    • 本地存储
    • js面向对象
    • es6
    • ES6
      • Js面向对象
      • 创建对象
        • 字面量
        • 构造函数
        • 静态成员和实例成员
        • instanceof
        • constructor
      • 类型
      • 内置构造对象
        • Object
        • Array
        • RegExp()
    • js面向对象1
    • js面向对象2
    • js面向对象3
  • GO

  • 正则表达式

  • java

  • TypeScript

  • react

  • 前端知识

  • jQuery

  • Python

  • C和C++

  • 前端和后端
  • JavaScript
yuadh
2022-02-18
目录

ES6

# Js面向对象

# 创建对象

# 字面量

let obj = {
    name:'yuadh',
    move:function(){
        //...
    }
}
1
2
3
4
5
6

访问对象属性

  • obj.name
  • obj['name']

便利对象属性方法

for(let key in obj){
    console.log(obj[key])//动态的,使用obj.key会去找其属性
}
1
2
3

# 构造函数

let obj = new Object();
obj.name = 'yuadh'
obj.move = function(){
    //...
}
//or
let obj = new Object
1
2
3
4
5
6
7

自定义构造函数

funtion Object(name,move){
    this.name = name
    this.move = move
}
let obj = new Object('yuadh',function(){
    //...
})

1
2
3
4
5
6
7
8

# 静态成员和实例成员

funtion Object(name,move){
    //实例成员
    this.name = name
    this.move = move
}
Object.mode = 1;
Object.fly = function (){}
let obj = new Object('yuadh',function(){})
console.log(obj.name)//实例成员可以通过实例化对象访问
console.log(Object.mode)//静态成员可以通过类访问
1
2
3
4
5
6
7
8
9
10

有点像 java ?

# instanceof

用于判断一个对象是否是另外一个构造函数的实力对象

obj instanceof Object

# constructor

返回构造函数本身

consolo.log(obj.constructor)//Object
1

# 类型

  • 数据类型(值传递)简单数据类型

  • 引用类型(地址传递)复杂数据类型

# 内置构造对象

# Object

  • Object.assign 静态方法创建新的对象
  • Object.keys 静态方法获取对象中所有属性
  • Object.values 获取对象中所有属性值 返回值是数组形式

# Array

  • concat() 拼接新数组

    let arr = [1,2,3]
    let arr1 = ['a','b','c']
    let newArr = arr.concat(arr1,'+1')
    
    1
    2
    3
  • join() 将数组元素转为字符串

    let arr = ['a', 'b', 'c']
    let newStr = arr.join('分隔符')
    console.log(newStr)//
    
    1
    2
    3
  • reverse() 反转数组

  • indexOf() 查询元素位置

  • lastIndexOf() 从数组末端开始查找元素位置

  • sort 排序

    正序排序

    let arr = [3,7,2,4,1]
    let re = arr.sort(function(a,b){return a-b})
    
    1
    2

    倒序排序

    let arr = [3,7,2,4,1]
    let re = arr.sort(function(a,b){return b-a})
    
    1
    2
  • Array.isArray() 判断一个值是否是数组

    console.log(Array.isArray(arr))

  • Array.from(伪数组) 把伪数组转换伪真数组

let o = {0:'y',1:'z'}
let ary = Array.from(0)
1
2

伪数组

let lis = document.querySelectorAll('li')
//or
fn(arguments){}
1
2
3
  • forEach() 便利数组

    arr.forEach(item=>{
        consolo.log(item)
    })
    
    1
    2
    3

# RegExp()

正则表达式构造函数

let reg = new RegExp(/abc/)

编辑 (opens new window)
上次更新: 2023/02/07, 14:51:48
es6
js面向对象1

← es6 js面向对象1→

Theme by Vdoing | Copyright © 2021-2023 yuadh
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×