学习不止
文章平均质量分 78
好好学习,天天向上
yanAHeng
这个作者很懒,什么都没留下…
展开
-
面向对象一--简介
面向对象编程什么是面向对象编程?面向对象是一种编程思想,经常被拿来和面向过程比较。其实说的简单点,面向过程关注的重点是动词,是分析出解决问题需要的步骤,然后编写函数实现每个步骤,最后依次调用函数。而面向对象关注的重点是主谓,是把构成问题的事物拆解为各个对象,而拆解出对象的目的也不是为了实现某个步骤,而是为了描述这个事物在当前问题中的各种行为。面向对象的特点是什么?封装:让使用对象的人不考虑内部实现,只考虑功能使用 把内部的代码保护起来,只留出一些 api 接口供用户使用继承:就是为了代码原创 2023-02-08 20:25:07 · 83 阅读 · 0 评论 -
面向对象三--继承
继承原创 2023-02-08 20:22:49 · 69 阅读 · 0 评论 -
面向对象二-- 原型及原型链
原型和原型链原创 2023-02-08 20:22:41 · 67 阅读 · 0 评论 -
NodeJs(一)
node.js初探原创 2023-02-08 20:16:28 · 99 阅读 · 0 评论 -
BOM--浏览器对象模型
浏览器对象模型(BOM)是什么?BOM是Browser Object Model的缩写,简称浏览器对象模型。BOM由一系列相关的对象构成,并且每个对象都提供了很多方法与属性。BOM体系结构图:BOM能做什么?BOM提供了一些访问窗口对象的一些方法,我们可以用它来移动窗口位置,改变窗口大小,打开新窗口和关闭窗口,弹出对话框,进行导航以及获取客户的一些信息如:浏览器品牌版本,屏幕分辨率。但BOM最强大的功能是它提供了一个访问HTML页面的一入口——document对象,以使得我们可以通过这个入口来原创 2020-12-31 18:20:35 · 454 阅读 · 0 评论 -
DOM事件模型四(Event对象)
https://blog.csdn.net/qq_23389687/article/details/80166843#js%E4%B8%AD%E7%9A%84dom0%E5%92%8Cdom2%E4%BA%8B%E4%BB%B6https://www.imooc.com/article/260631https://www.jianshu.com/p/bbd6e600c0d3原创 2020-12-31 18:20:10 · 380 阅读 · 0 评论 -
DOM事件模型三(关于Dom0级和Dom2级)
发展历史DOM 级别 0DOM 级别 0 不是 W3C 规范。而仅仅是对在 Netscape Navigator 3.0 和 Microsoft Internet Explorer 3.0 中的等价功能性的一种定义。DOM 级别 1DOM 级别 1 专注于 HTML 和 XML 文档模型。它含有文档导航和处理功能。DOM 级别 2DOM 级别 2 对 DOM 级别 1 添加了样式表对象模型,并定义了操作附于文档之上的样式信息的功能性。 DOM 级别 2 同时还定义了一个事件模型(Events,原创 2020-12-31 18:19:45 · 1219 阅读 · 1 评论 -
DOM事件模型二(事件委托)
传统的事件处理中,需要为每个元素添加事件处理器。事件委托则是一种简单有效的技巧,通过它可以把事件处理器添加到一个父级元素上,从而避免把事件处理器添加到多个子级元素上。事件委托的原理用到的就是事件冒泡和目标元素,把事件处理器添加到父元素,等待子元素事件冒泡,并且父元素能够通过target(IE为srcElement)判断是哪个子元素,从而做相应处理。传统事件处理,为每个元素添加事件处理器,代码如下:<!DOCTYPE html><html lang="en"><hea原创 2020-12-31 18:19:15 · 140 阅读 · 1 评论 -
DOM事件模型一(事件捕获、事件冒泡、事件流)
事件事件就是文档或浏览器窗口中发生的一些特定的交互瞬间。事件通常与函数结合使用,函数不会在事件发生前被执行! (如用户点击按钮)。事件捕获事件捕获的思想是不太具体的节点应该更早接收到事件,而最具体的节点应该最后接收到事件。事件捕获的用意在于在事件到达预定目标之前就捕获它。以下列HTML结构为例,说明事件冒泡、事件捕获及事件流。// 示例一<!DOCTYPE html><html lang="en"><head> <meta charset="原创 2020-12-31 18:18:32 · 188 阅读 · 0 评论 -
Promise练习四(并发请求,最大阈值)
// 创建模拟并发执行的数据const list = []const times = [1000, 2000, 900, 3000, 2000, 3000, 2000, 3000]const isRandomTime = falsefor (let i = 1; i <= 8; i++) { list.push(() => { return new Promise((resolve, reject) => { let time = !原创 2020-12-20 20:43:10 · 710 阅读 · 0 评论 -
Promise练习三(手写简版promise + 符合promise/A+规范的promise)
JavaScript实现一个简易的Promise对象class MyPromise { constructor(handleFn) { // Promise的状态 this.PromiseState = "pending"; // Promise的结果 this.PromiseValue = null; // 画重点!!!这两个list是为了将下一个Promise与当前Promise相关联 this._toNextResolve = []; t原创 2020-12-18 23:09:45 · 334 阅读 · 1 评论 -
Promise练习二(请求超时重连)
实现:ajax请求超时重连,但超过最大重连次数即停止重连// 模拟ajax请求function ajaxFn(resolve, reject){ var random = Math.random() * 10; setTimeout(()=>{ if(random > 9){ resolve('成功了:' + random) }else{ reject('失败了:' + random) } }, ra原创 2020-12-17 23:52:00 · 355 阅读 · 0 评论 -
Promise练习一(Promise串联执行)
有一些业务场景下,比如上传文件扫描图等,需要严格按照顺序上传,这就需要一个方法能保证这些操作任务串联执行。Promise的then方法链式调用可以串联多个同步/异步任务,可以实现此功能。function task1(){ return new Promise(function(resolve, reject){ setTimeout(()=>{ var random = Math.random() * 10; console.log('task1成功了!' +原创 2020-12-17 22:30:26 · 696 阅读 · 1 评论 -
Promise详解二(解读Promise规范 + 一些小测试)
任何符合promise规范的对象和函数都可以成为Promise。以下内容参考自promise A plus 规范,地址:https://promisesaplus.com/基本术语Promise:是一个具有then方法的对象或函数,其行为符合Promises/A+规范。thenadble:是一个定义了then方法的对象或函数。value:指任何JavaScript的合法值(包括undefined,thenable,和promise)。exception:使用throw抛出的一个值。reaso原创 2020-12-18 16:58:14 · 832 阅读 · 0 评论 -
promise详解一(解读Promise对象)
为什么需要Promise?Javascript是一门单线程语言,早期我们解决异步场景时,大部分情况都是通过回调函数来进行。例如,在浏览器中发送ajax请求,就是常见的异步场景。发送请求后,一段时间服务端相应之后我们才能拿到结果,如果我们希望在异步结束之后执行某个操作,就只能通过回调函数这样的方式进行操作。var dynamicFunc = function(cb){ setTimeout(function(){ cb(); }, 1000);}dynamicFunc(function()原创 2020-12-15 21:52:41 · 1818 阅读 · 0 评论 -
JS执行机制(事件循环)
JS执行机制一、运行机制JS分为同步任务和异步任务。所有同步任务都在主线程上执行,形成一个执行栈(execution context stack)。主线程之外,还存在一个"任务队列"(task queue)。只要异步任务有了运行结果,就在"任务队列"之中放置一个事件。一旦"执行栈"中的所有同步任务执行完毕,系统就会读取"任务队列",看看里面有哪些事件。那些对应的异步任务,于是结束等待状态,进入执行栈,开始执行。主线程不断重复上面的第三步。二、宏任务、微任务macro-task(宏任务)原创 2020-11-03 18:51:52 · 564 阅读 · 0 评论 -
从浏览器进程到JS编译执行
进程和线程一、进程二、线程三、进程和线程的关系浏览器是多进程的一、浏览器有哪些进程二、浏览器多进程优势三、浏览器渲染进程四、主进程对渲染进程的控制过程五、JS进程编译执行JS运行机制一、运行机制二、宏任务、微任务三、事件循环原创 2020-09-27 23:20:28 · 289 阅读 · 0 评论 -
算法之时间复杂度、空间复杂度
算法执行时间的估算方法事后分析估算方法:把算法执行若干次,通过计算机的计时功能计时,对不同的程序运行时间进行比较,从而确定算法效率。缺陷:必须先根据算法实现测试程序,并且不同的测试环境可能导致测试结果差异很大事前分析估算方法:程序在计算机上运行所消耗的时间取决于:算法采用的策略和方案;编译产生的代码质量;问题的输入规模(即输入量的多少);机器执行指令的速度;由此可见,除开与计算机硬件、软件有关的因素,一个程序的运行时间依赖于算法的好坏的和问题的输入规模。如果算法固定,那么该算法的原创 2020-09-14 22:41:42 · 154 阅读 · 0 评论
分享