Skip to content

基础

数据类型

8种数据类型 , 7种基本数据类型

  • String

  • Number

  • Boolean

  • Symbol -- es6引入 实例唯一且不可被改变

  • BigInt

  • Null

  • undefined

  • Object

var和let的区别

  • var声明的变量会挂载在全局window上, let不会, 也就是说var声明的变量会存在全局污染的问题, 而let不会。都可以跨script标签访问。
  • let声明的是块级作业域
  • let声明存在TDZ(暂时性死区),也就是说变量在声明初始化之前不能访问。
  • 重复声明的问题, var可以, let不可以。

函数中this的指向

调用方式示例this的指向
直接调用funcName()全局对象
对象调用obj.funcName()前面的对象
call, apply, bindfuncName.call(ctx)第一个参数对象
通过new调用new funcName()新对象
js
function Test(){
  console.log(this) // Test {}
}
new Test()