手写发布订阅

const eventHub = {map: {},on: (name, fn) => {// 入队// 防御性编程eventHub.map[name] = eventHub.map[name] || []eventHub.map[n
2022年05月06日 269次浏览

手写节流 throttle、防抖 debounce

节流 throttle// 节流就是 [技能冷却中]const throttle = (fn,time)=>{ let CD = false return (...args)=>{ if(CD) return f
2022年05月05日 265次浏览

Axios浅析

Axios起步npm install axios<script src="https://cdn.bootcdn.net/ajax/libs/axios/0.21.1/axios.min.js"></s
2022年02月27日 756次浏览

根据PromiseA+实现一个自己的promise

根据PromiseA+实现一个自己的promise步骤一:实现成功和失败的回调方法首先需要创建一个构造函数 promise,创建一个 promise类,在使用时传入了一个执行器 executor,executor会传入两个参数:成功(res
2022年01月21日 360次浏览

ES6速学

var 和 let 以及 const 的区别1. var 可重复声明a = 3var avar a = 42. let 不可重复前置a = 3let a3. let 不可重复声明let a = 3let a = 4 //报错let a =
2021年11月29日 1,420次浏览

javascript - 关于 localStorage 的一切

什么是localStorage?localStorage 是窗口界面的只读属性,它允许我们访问文档源(浏览器)的存储。它允许我们在用户浏览器上保存键值对。在 HTML 5 中正式引入,并且所有它都存储为字符串。localStorage 是只
2021年11月24日 1,281次浏览

简述 JavaScript 之 filter

本文主要从以下几点介绍 filter定义filter的使用技巧结论定义定义filter()方法创建新数组,其中包含通过所提供的函数实现的测试的所有元素。使用过滤器查看下面的代码实例:const data=[ {name:"pra
2021年11月20日 556次浏览

JavaScript 迭代器以及它的使用场景

JavaScript 迭代器是在 ES6 中引入的,它们用于遍历一系列的值,通常是某种集合。
2021年11月20日 568次浏览

深入理解JavaScript对象

对象到底是什么呢?语法对象可以同两种形式定义:声明(文字)形式和构造形式。对象的文字语法形式:var myObj = {key:value// ....};构造形式:var myObj = new Object();myObj.key =
2021年11月17日 330次浏览

this 深入解析

function baz() { // 当前调用栈是:baz // 因此,当前调用位置是全局作用域 console.log("baz"); bar();// <--bar的调用位置}func
2021年11月13日 1,022次浏览

作用域闭包

function foo(){ var a = 2; function bar(){ console.log(a); } return bar;}var baz = foo();baz(); // 2
2021年11月10日 563次浏览

MVC模式

浅析MVC模式Don't Repeat Yourself - DRY 原则哪里重复了?代码级别的重复把相同的三行代码写了两遍那么你就应该重构它页面级别把类似的页面做了10遍那么你就想出一个万金油的写法MVC就是一个万金油所有的页面都可以使用
2021年09月06日 583次浏览

浅析MVC

浅析MVCMVC 三个对象分别做什么MVC包括三类对象,将它们分离出来以提高灵活性和复用性模型model用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法,会有一个或多个视图监听此模型。一旦模型的数据发生变化,模型将通知有关的视图。
2021年09月03日 369次浏览

动态服务器 AJAX (Cookie、Session)

动态服务器 AJAX (Cookie、Session)静态服务器 V.S. 动态服务器:也叫静态网页 V.S. 动态网页判断依据是否请求了数据库没有请求数据库,就是静态服务器请求了数据库,就是动态服务器简单化数据库 /db/users.
2021年09月02日 640次浏览

跨域、CORS、JSONP

跨域、CORS、JSONP跨域关键知识同源策略浏览器故意设计的一个功能限制CORS突破浏览器限制的一个方法JSONPIE时代的妥协同源策略同源定义源window.origin 或 location.origin 可以得到当前源源 = 协议
2021年09月01日 551次浏览

异步与Promise

异步与PromiseJS异步编程模型什么是异步?什么是同步?异步如果能直接拿到结果,那就是异步同步比如在医院挂号,拿到号才会离开窗口JS里面同步任务可能消耗10毫秒,也可能需要3秒总之不拿到结果是不会离开如果不能直接拿到结果,那就是异步比如
2021年08月31日 370次浏览

AJAX的原理

AJAX的原理ajax:用JS发送请求和接收响应背景AJAX是浏览器上的功能浏览器可以发请求,收响应浏览器在window上加了一个XMLHttpRequest函数用这个构造函数(类)可以构造一个对象JS通过它实现发请求,收响应首先准备一个服
2021年08月30日 627次浏览

DOM事件与事件委托

DOM事件与事件委托点击事件W3C规定了浏览器应该同时支持两种调用顺序首先按照爷爷=>爸爸=>儿子 顺序看看有没有函数监听然后按照儿子=>爸爸=>爷爷 顺序看看有没有函数监听有监听函数就调用,并提供事件信息,没有就跳
2021年08月29日 550次浏览

如何使用jQuery

如何使用jQuery一、选择网页元素jQuery的基本设计思想和主要用法,就是“选择某个网页元素,然后对其进行某种操作”使用jQuery的第一步,往往就是将一个选择表达式。放进构造函数jQuery() (简写为$),然后得到被选中的元素选择表达式可以是CSS选择器$(document) //选择整
2021年08月28日 780次浏览

手写DOM库

手写DOM库封装DOM什么叫封装举例笔记本电脑就是CPU、内存、硬盘、主板、显卡的封装用户只需要接触显示器、键盘、鼠标、触控板等设备即可操作复杂的计算机接口被封装的东西需要暴露一些功能给外部这些功能就是接口,如USB接口、HDMI接口设备只有支持这些接口、即可与被封装的东西进行通讯比如鼠标、键盘支持
2021年08月27日 329次浏览