JS基础知识(四):异步

同步和异步的区别

单线程和异步

  • JS是单线程语言,只能同时做一件事
  • 浏览器和nodejs以支持js启动进程,如Web Worker
  • JS和DOM渲染共用同一个现成,因为JS可修改DOM结构
  • 遇到等待(网络请求,定时任务)不能卡住
  • 所以需要异步
  • 异步基于callback函数形式

JS基础知识(三):作用域与闭包

作用域和自由变量

作用域

  • 全局作用域
  • 函数作用域
  • 块级作用域(ES6新增)

自由变量

  • 一个变量在当前作用域没有定义,但被使用了
  • 向上级作用域,一层一层寻找,直到找到为止
  • 如果到全局作用域都没有找到,则报错xx is not defined

JS基础知识(二):原型与原型链

class和继承

类的基本使用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// 定义一个类
class Student {
constructor(name, number) {
this.name = name
this.numer = number
}
sayHi() {
console.log(`姓名 ${this.name} , 学号 ${this.number}`)
}
}
// 通过类 new 对象/实例
const xiaoming = new Student('小明', 50)
console.log(xiaoming.name) // 小明
console.log(xiaoming.number) // 50
xiaoming.sayHi() // 姓名 小明 , 学号 50

JS基础知识(一):变量类型和计算

值类型和引用类型

值类型

值类型示例

1
2
3
4
5
// 值类型
let a = 100
let b = a
a = 200
console.log(b) // 100

值类型在内存中的存储方式

值类型一般都是在栈中存储一个值

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×