JavaScript
文章平均质量分 75
清风木子云
这个作者很懒,什么都没留下…
展开
-
defer和async的区别
script标签用于加载脚本与执行脚本,是前端开发中非常重要的标签直接使用script脚本的话,html会按照顺序来加载并执行脚本,在脚本加载及执行分过程中,会阻塞后续的DOM渲染。现在script提供了async和defer两个属性来解决DOM渲染阻塞的问题没有 defer 或 async,浏览器会立即加载并执行指定的脚本,“立即”指的是在渲染该 script 标签之下的文档元素之前,也就是说不等待后续载入的文档元素,读到就加载并执行。<script src="script.js">转载 2021-09-07 09:40:42 · 4472 阅读 · 0 评论 -
JS十进制与二进制互转
将给定数字转换成二进制字符串。如果字符串长度不足 8 位,则在前面补 0 到满8位。('00000000' + num.toString(2)).slice(-8);给定二进制字符串,将其换算成对应的十进制数字return parseInt(str,2);获取数字 num 二进制形式第 bit 位的值。注意:1、bit 从 1 开始2、返回 0 或 13、举例:2 的二进制为 10,第 1 位为 0,第 2 位为 1function valueAtBit(num, bit) .原创 2021-08-29 22:59:33 · 1496 阅读 · 0 评论 -
JS判断数据类型的几种方式
1)、Object.prototype.toString.call() 所有类型都可以判断Object.prototype.toString.call('abc') //[object String]Object.prototype.toString.call(1) //[object Number]Object.prototype.toString.call(true) //[object Boolean]Object.p原创 2021-08-29 22:51:38 · 218 阅读 · 0 评论 -
JS防抖、节流
防抖和节流严格算起来应该属于性能优化的知识,但实际上遇到的频率相当高,处理不当或者放任不管就容易引起浏览器卡死。防抖防抖://scroll方法中的do somthing至少间隔500毫秒执行一次 window.addEventListener('scroll',function(){ var timer;//使用闭包,缓存变量 return function(){ if(timer) clearTimeout(timer); .原创 2021-08-29 22:45:57 · 59 阅读 · 0 评论 -
如何解决fetch方法请求数据的时候http请求被转成https
问题描述如下图,我们在做请求的时候明明请求的是http://www.xxxasfas.com,但是总会出现报错,报错的原因是URL错误,导致fetch请求失败,可是我们明明没有做其他操作,为什么url会自动变成https://www.xxxasfas.com呢,难道此fetch非彼fetch吗,我们可以做个假设:1、全局fetch的api的被重写了2、其他配置影响,让原生 api 出现异常;经检查,fetch 请求没有被重写,所以就着重看下思路二。经过不断的查找, 发现一个meta 标签:原创 2021-08-09 20:14:39 · 2144 阅读 · 0 评论 -
盘点JavaScript设计模式(常用十五大设计模式)
javaScript设计模式前言一、设计原则单一职责原则(SRP)最少知识原则(LKP)开放-封闭原则(OCP)里氏替换原则 The Liskov Substitution Principle (LSP)接口分离原则 The Interface Segregation Principle (ISP)依赖倒置原则 The Dependency-Inversion Principle (DIP)二、JavaScript设计模式1、单例模式2、策略模式3、代理模式4、迭代器模式5、发布-订阅模式6、命令模式7、组转载 2021-07-30 21:11:04 · 2772 阅读 · 2 评论 -
JS模块化开发历程之CommonJS、AMD、CMD、ES6
JS为什么需要模块化在JavaScript发展初期就是为了实现简单的页面交互逻辑,寥寥数语即可;如今CPU、浏览器性能得到了极大的提升,很多页面逻辑迁移到了客户端(表单验证等),随着web2.0时代的到来,Ajax技术得到广泛应用, react、vue等前端框架层出不穷,前端代码日益膨胀这时候JavaScript作为嵌入式的脚本语言的定位动摇了,JavaScript却没有为组织代码提供任何明显帮助,甚至在ES6出现之前没有类和继承的概念,更不用说模块(module)了,JavaScript极其简转载 2021-07-29 19:57:20 · 179 阅读 · 0 评论 -
关于HTTP、HTTP2、HTTPS发展史汇总(内含思维导图)
文章目录前言一、HTTP二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。一、HTTP示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplo原创 2021-07-27 15:57:39 · 718 阅读 · 0 评论 -
HTML 之textContent、innerText、innerHTML、nodeValue之间的区别
textContenttextContent 属性设置或者返回指定节点的文本内容。如果设置了textContent属性,任何子节点都会被移除,然后被指定的字符串的文本节点替换。注意:某些时候textContent属性可以被nodeValue属性替代,但是这个属性可以返回子节点的文本。//获取所有列表的文本内容:document.getElementById("myList").textContent;//结果:CoffeeTea,提取了所有子节点的文本内容,并且无空格的并列显示innerT原创 2021-07-26 11:15:01 · 983 阅读 · 0 评论 -
JS之Promise(必会),手写promise
JS之Promise,你不知道的哪些知识前言一、Promise有什么用?1.异步编程2.Promise能解决什么问题3.Promise的优势二、什么是promise1.Promise介绍2.Promise特点3.Promise缺点三、Promise应用1.Promise创建2.Promise Ajax3.Promise.prototype.then方法:链式操作4.Promise.prototype.catch方法:捕捉错误5.Promise.all方法,Promise.race方法6.Promise.re转载 2021-07-26 00:21:45 · 194 阅读 · 0 评论 -
(最全)JS的数组方法汇总(思维导图)
js数组有很多数组方法,这些方法可以帮你做数组运算事半功倍,今天花了一下午的时间整理成了思维导图的形式,希望能帮助记忆。原创 2021-07-24 20:46:35 · 947 阅读 · 0 评论 -
js从事件驱动到数据驱动,从jQuery到react、vue的转变
vue数据双向绑定是通过数据劫持结合发布者-订阅者模式的方式来实现的。利用了 Object.defineProperty() 这个方法重新定义了对象获取属性值(get)和设置属性值(set)。原创 2021-07-19 17:52:59 · 572 阅读 · 0 评论 -
JS实现继承的七种方式(包括es6的class方法实现的继承)
1、原型链继承核心: 子类的原型是父类的实例// 定义一个动物类function Animal (name) { // 属性 this.name = name || 'Animal'; // 实例方法 this.sleep = function(){ console.log(this.name + '正在睡觉!'); }}// 原型方法Animal.prototype.eat = function(food) { console.log(this.name +转载 2021-07-18 22:37:42 · 758 阅读 · 0 评论