ICode9

精准搜索请尝试: 精确搜索
  • 教你如何手写一个Promise2022-02-25 23:58:27

    想要源码的可以看这里,里面也有一些其他的知识 想要手写一个promise,首先就要了解promise,想必大家都被过一些promise的面试题,知道一些promise的用法,主要考的就是一种异步编程的思想。 了解promise 我们先来看看直接输出一个promise对象会是什么,通过代码: var p = new Promise((reso

  • 关于promise的实现2022-02-08 15:01:46

    参考实现代码: class MyPromise { // 构造方法 constructor(executor) { // 初始化值 this.initValue(); // 初始化this指向 this.initBind(); try { // 执行传进来的函数 executor(this.resolve, this.reject); } catch (e) { //

  • 手写Promise2022-01-18 19:29:59

    /** * author:lsr * desc:手写Promise * date:20220118 */ class MyPromise { state = 'pending' value = undefined reason = undefined resolveCallbacks = [] rejectCallbacks = [] constructor(fn) { const resolveHandler = (value) => {

  • 从如何使用到如何实现一个Promise2022-01-10 12:34:54

    前言 这篇文章我们一起来学习如何使用Promise,以及如何实现一个自己的Promise,讲解非常清楚,全程一步一步往后实现,附带详细注释与原理讲解。 如果你觉的这篇文章有帮助到你,❤️关注+点赞❤️鼓励一下作者,文章公众号首发,关注 前端南玖 第一时间获取最新的文章~ promise是什么?主要用来解决什

  • 手把手一行一行代码教你“手写Promise“,完美通过 Promises/A+ 官方872个测试用例2021-12-20 20:34:18

    文章目录 一、定义初始结构二、实现 resolve 和 reject1. 管理状态和结果2. this 指向问题 三、实现 then 方法1. 状态不可变2. 执行异常 throw3. 参数校验 四、实现异步1. 添加定时器2. 回调保存3. 验证 then 方法多次调用 五、实现 then 方法的链式调用1. Promises/A+ 规

  • 手写一个MyPromise构造函数2021-12-01 12:03:45

    参考网上资料,自己整理了一下思路 首先是一个最简化的MyPromise构造函数,参数是executor执行器函数。 接下来是,给这个构造函数增加then方法和catch方法。  打印结果是  最后一步是使构造函数可以链式调用。 function MyPromise(excutor) { console.log('进入MyPromise构造器

  • 手写promise2021-11-09 13:35:09

    // 判断变量是否为function const isFunction = variable => typeof variable === 'function' // 三种状态 const PENDING = 'PENDING' const FULFILLED = 'FULFILLED' const REJECTED = 'REJECTED' // 定义Promise的三种状态常量 class MyPromise {

  • 手写Promise2021-07-10 10:52:18

    <script> const PENDING="pending"; const FULFILLED = "fulfiled"; const REJECTED = "rejected"; function MyPromise(fn){ let _this=this; _this.state=PENDING; _this.value="";

  • 从零开始一个完整的promise(附源码)2021-07-01 17:30:04

    实现过程详细步骤,文档传送门 从零实现promise(一)从零实现promise(二)从零实现promise(三) 源码: // 先定义三个状态变量 const PENDING = 'pending' const REJECTED = 'rejected' const FULFILLED = 'fulfilled' class MyPromise { state = PENDING value = ''

  • JS手写面试题 --- Promise 以及相关方法的实现2021-06-21 19:04:31

    JS手写面试题 --- Promise 以及相关方法的实现 题目描述: 手写 Promise 以及 Promise.all Promise.race 的实现 实现代码如下: class MyPromise { constructor(fn) { // 表示状态 this.state = "pendings"; // 表示 then 注册的

  • 完整实现原生Promise2021-04-08 20:33:17

    手写前需要了解这些 1.什么是宏任务 我们都知道JS是单线程的,但是一些高耗时操作就带来了进程阻塞的问题,为了解决这个问题,JS有两种任务的执行模式,同步模式和异步模式。 在异步模式下,创建异步任务主要分为宏任务和微任务两种,宏任务是由宿主(浏览器、Node)发起的,而微任务由JS自身

  • 手写Promise (1)创建MyPromise类2021-04-03 20:04:56

    class MyPromise { constructor(executor) { this.state = 'pending'; //初始状态为pending this.value = null; try { // class中默认是严格模式,这个executor是MyPromise中的函数,他的this指向的是window,class中默认严格模式,

  • 【】future用法2021-03-27 23:51:15

    std::future 介绍 1 #include <iostream> 2 #include <thread> 3 #include <future> 4 5 using namespace std; 6 7 void DoWork(promise<int> thePromise) 8 { 9 // ... Do some work ... 10 // And ultimately store the result

  • 手写实现 MyPromise 源码 ,尽可能还原 Promise 中的每一个 API,并通过注释的方式描述思路和原理。2021-01-08 12:58:18

    // 初始状态 const PENDING = "pending"; // 完成状态 const FULFILLED = "fulfilled"; // 失败状态 const REJECTED = "rejected"; // 异步执行方法封装 function asyncExecFun(fn) { setTimeout(() => fn(), 0); } // 执行promise resolve功能 function resolv

  • js高级用法----手写js原生方法2020-11-20 14:04:11

    1、call 方法 /** * _call * * @param { context } context * @param { arguments } arguments */ Function.prototype._call = function(context) { // 如果没有传或传的值为空对象 context指向window context = context || window let fn = Symbol(context) conte

  • 写给自己看的Promise2020-11-11 15:32:32

    static PENDING = "pending";//准备状态 static FULFILLED = "fulfilled";//解决状态 static REJECTED = "rejected";//拒绝状态  1.初始化状态、值、then中没 有处理的函数数组 2.将resolve和reject函数传递 出去    constructor(executor) { t

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有