JavaScript
JavaScript相关知识
hamling620
天地不仁,以万物刍狗;圣人不仁,以百姓刍狗。
展开
-
TypeScript实现队列结构
使用TypeScript实现队列结构一. 基本概念队列是一种先进先出(First In First Out)的数据结构。它是从队尾插入元素(入队),从队首删除元素(出队)。队列在日常生活中就是排队,在JavaScript中的应用就是EventLoop微任务宏任务队列等。二. 队列的实现interface IQueueData<T> { [index: number]: T}class Queue<T> { private data: IQueueData&l原创 2021-05-21 22:45:33 · 556 阅读 · 1 评论 -
Promise主要方法实现
Promise主要方法实现1. Promise.allPromise.all用于将多个Promise实例包装成一个Promise实例并返回这个Promise实例,只有所有的promise的状态变为resolved,返回的promise状态才变为resolved,否则变为rejected。Promise.all = function (promises) { if (typeof promises[Symbol.iterator] !== 'function') { throw new原创 2021-04-22 16:22:23 · 79 阅读 · 0 评论 -
Promise以及A+规范实现
PromisePromise是ES6提出并实现的异步解决方案。它将异步操作以同步的流程表达出来,避免了层层嵌套的回调函数。它可以看作一个保存着未来才会结束的事件(通常是异步操作的结果),从语法上来说它是一个对象,可以从它来获取异步操作的消息。ES6提供统一的API来处理不同的异步操作。Promise对象的状态不受外影响,只与异步操作的结果相关,换言之,就是异步操作的结果来决定Promise对象的状态;Promise对象的状态只能由pending变为fulfilled和pending变为reject原创 2021-04-21 10:55:44 · 173 阅读 · 0 评论 -
JavaScript基础之call、apply和bind方法
JavaScript中函数原型方法call、apply和bindcall、apply、bind方法主要用来改变函数中this的指向(显式绑定this)1. call调用call方法会将函数中的this指向上下文对象,然后传递call中余下的参数给函数,并执行函数。Function.prototype(context, …rest)。call方法的第一个参数为一个上下文对象,也就是绑定this的对象,对于基本类型string、number、boolean等类型,会将其转化为相对应的基本包装类原创 2021-04-18 18:31:57 · 180 阅读 · 1 评论 -
JavaScript基础之new、instanceof操作符的实现
JavaScript基础之new、instanceof操作符的实现1. new的实现new做了一下以下操作:1. 创建了一个对象(内存中开辟空间);2. 将这个创建的对象的原型对象(proto)指向构造函数的原型对象(prototype);3. 让当前构造函数的this指向创建的对象,并执行构造函数;4. 执行构造函数的返回值如果是引用类型,那么直接返回,否则把创建的对象返回。function myNew () { var Constructor = Array.prototype.s原创 2021-04-20 17:20:07 · 72 阅读 · 0 评论