2020-08-20[EcStatic]

js 堆栈

  • 数据结构
  • 插件封装
  • 编程思想
  • 设计模式(虚)

js 细节

  • aert() // obj.toString()
  • VO 创建值
  • VO 指针指向值(val,16 进制堆地址)
  • let VO
  • var GO
  • GO 全局对象
  • VO 变量对象
  • AO 活动对象
  • ECStack 执行上下文
  • scope 作用域
  • scope chain 作用域链

js 闭包

  • js
  • es6/es7/es9
  • h5/css3
  • vue
  • 小程序

es7


//  es7
['a', 'b', 'c'].includes('a')     // es7
['a', 'b', 'c', 'd'].includes('b', 2) // false arr.includes(content,index)

//  判断  +0  和 -0
[1, +0, 3, 4].includes(-0)    //true
[1, +0, 3, 4].indexOf(-0)     //1

// 二维数组
var arr = [1, [2, 3], 4]
arr.includes([2, 3])   //false
arr.indexOf([2, 3])    //-1

// 精确判断
let demo = [1, NaN, 2, 3]
demo.indexOf(NaN)        //-1
demo.includes(NaN)       //true

es8

//  es8
//  幂运算
3 ** 2  //9
// 效果同
Math.pow(3, 2) //9

/**
promise 对象
promise使用reject()抛出异常
promise使用reslove()返回接口处理数据
promise使用Error抛出异常
*/ 


// async function()  es8
// resolve 
//async await  返回Promise
let timer = async function timer() {
    return new Promise((reslove, reject) => {
        setTimeout(() => {
            reslove('a');
        }, 1000);
    })
}
timer().then(result => {
    console.log(result);
}).catch(err => {
    console.log(err.message);
})
// 异常处理
let promise = new Promise((reslove, reject) => {
   throw new Error('promise使用Error抛出异常') //使用throw异常不支持放在定时器中
})
promise().then(res => {
 console.log(res)
}).catch(err => {
 console.log(err.message)     //'promise使用Error抛出异常'
})
//  reject(new Error('promise抛出异常'));
let promise = new Promise((resolve, reject) => {

    setTimeout(() => {
        reject(new Error('promise抛出异常'));
    }, 1000);
})
promise.then(res => {
    console.log(res);
}).catch(err => {
    console.log(err.message);  //'promise抛出异常'
})
//返回同步的值
let sayHello = async function sayHello() {
    let hi = 'hello world'//等同于return Promise.resolve(hi);
    return hi
}
sayHello().then(res => {
    console.log(res)
}).catch(err => {
    console.log(err.message);
})


js 引擎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值