重学JavaScript高级
文章平均质量分 87
前端大菜鸟_
分享前端领域技术,希望能和大家多多交流
展开
-
重学JavaScript高级(十五): XHR以及Fetch的理解应用
在维基百科中的解释超文本传输协议是一种分布式、协作式和超媒体信息系统的应用层协议HTTP是万维网的数据通信的基础,设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法通过HTTP或者HTTPS协议请求的资源由统一资源标识符来标识HTTP是客户端(用户)和服务端(网站)之间请求和响应的标准请求(Request)和响应(Response)请求:包含请求行、请求头和请求体响应:包含响应行,响应头和响应体。原创 2024-01-25 17:35:37 · 1327 阅读 · 0 评论 -
重学JavaScript高级(十四): 手写工具函数(防抖-节流-深浅拷贝-时间总线)
通常事件触发之后,会立即执行相对应的函数,而防抖就是,事件触发之后,过一段时间才会触发相应的函数事件不断的触发,执行函数会无限制的延后。原创 2024-01-24 17:50:05 · 561 阅读 · 0 评论 -
重学JavaScript高级(十三):Storage存储和正则表达式
正则表达式(regex或者regexp 或者 RE)是计算机科学的一个概念是一种字符串匹配利器,可以帮助我们搜索、获取、代替字符串在JS中,正则表达式使用RegExp//在JS中有两种方式可以创建正则表达式// new RegExp(pattern(规则), flag(标识符))// /pattern(规则)/flag(标识符)原创 2024-01-20 00:08:30 · 615 阅读 · 0 评论 -
重学JavaScript高级(十二):async/await-事件循环-面试高频
异步函数返回的是一个Promise,Promise有三种状态,正常执行是pending,return是fulfilled,那么何时抛出异常。即,JS代码一次只能做一次事情,如果这个线程十分耗时,当前线程 就会阻塞。函数分为:普通函数、生成器函数、异步函数,本次就开始学习异步函数。JS是单线程(可以开启workers),但是JS的线程有自己的。每个进程会有多个线程,其中有一个线程是专门分给JS代码运行的。遇到throw,代码就会停止执行,且后面的代码不会执行。当代码抛出异常之后,不去捕获的话,就会很危险。原创 2024-01-07 21:05:54 · 1097 阅读 · 1 评论 -
重学JavaScript高级(十一):你真的了解Iterator(迭代器)-Generator(生成器)么?
此篇文章主要讲解了Iterator(迭代器)-Generator(生成器),在实际开发中用的不是很多,但是对于理解async/await有一定的帮助,同时对React中的redux库的使用,有很大的帮助原创 2024-01-07 11:48:33 · 1093 阅读 · 1 评论 -
重学JavaScript高级(十):十分钟掌握Promise细节
throw new Error 会让then方法中的promise处于rejected状态,可以被后面最近的catch接收到。上面我们知道,all方法存在一定的缺陷,因为只要有一个rejected状态,该状态后面的promise都不会执行。return的返回值,会让then方法中的promise处于fufilled状态,可以被后面的then接收到。传入多个Promise,将多个Promise包裹成一个新的Promise。谁先有结果,就会使用谁的结果,不会等到所有的Promise都有结果。原创 2024-01-06 15:14:39 · 485 阅读 · 1 评论 -
重学JavaScript高级(九):Proxy用法详解
需求:监听某个对象属性的操作。原创 2024-01-05 20:20:59 · 1337 阅读 · 1 评论 -
重学JavaScript高级(八):ES6-ES12新增特性学习
在先前的文章 重学JavaScript高级(三):深入JavaScript运行原理中提到过,只不过是ES5的执行描述。因此WeakSet就是弱引用类型,其指向的对象,有可能会被GC回收。在ES6中,有些执行描述进行了改变,ES6中引入了解构的用法。,那么他们之间有什么区别。原创 2024-01-05 02:24:22 · 1292 阅读 · 1 评论 -
重学JavaScript高级(七):ES6中实现继承的方法以及JS中的多态
ES5之前定义类的方式,使用Function进行定义,这种方法和普通函数过于相似所以在ES6中将class提升到了关键字在new Person后,其内部的操作,与ES5的操作一致(具体操作可以看先前的文章以下是定义方法//拥有高内聚,低耦合的特点//用于接收参数,默认调用//这是实例方法,实际上是将方法添加到了Person.prototype中,是一种语法糖running(){原创 2024-01-03 19:54:16 · 1070 阅读 · 1 评论 -
重学JavaScript高级(六):以面向对象原型继承(ES5)搞懂原型原型链
通过对面向对象思想的学习,以实现继承为突破口,彻底学懂JS中的原型和原型链原创 2024-01-02 19:03:30 · 1535 阅读 · 0 评论 -
重学JavaScript高级(五):JavaScript函数和对象知识增强
JavaScript被设计为新手开发者更容易上手,所以有时候本来错误语法,被认为也是可以正常被解析的;:表示属性是否可以通过delete删除属性,是否可以修改它的特性,或者是否可以将它修改为存取属性描述符。在严格模式下,这种失误就会被当做错误,以便可以快速的发现和修正。副作用本身是医学方面的概念,比如吃药的对身体产生了一些副作用。中有一个非常重要的概念叫纯函数,JS符合函数式编程。方法二:通过ES6的做饭,传入的一定是类数组对象。在计算机科学中,也引用了副作用的概念,函数在执行的过程中,不能产生副作用。原创 2024-01-01 18:07:36 · 894 阅读 · 0 评论 -
重学JavaScript高级(四):JavaScript的内存管理和闭包
在计算机科学中对闭包的定义又称为词法闭包,或者函数闭包是在支持头等函数的编程语言中,实现词法绑定的一种技术闭包在实现上是一个结构体,它存储了一个函数和一个关联的环境闭包的概念出现于60年代,最早实现闭包的程序是Scheme,而JS中有大量的设计是来源于Scheme的MDN对JS闭包的解释一个函数和对其周围状态的引用捆绑在一起,这样的组合就是闭包也就是说闭包可以让我们在一个内层函数中,访问到外层函数的作用域(JS通过作用域链实现的)在JS中,每当创建一个函数,闭包就会在函数创建的同时被创建出来。原创 2023-12-31 22:52:10 · 349 阅读 · 0 评论 -
重学JavaScript高级(三):深入JavaScript运行原理
目前,最常见的就是全局作用域和函数作用域注意:声明对象用的大括号,不会生成作用域当在一个作用域中使用一个变量,首先会在自己的作用域中查找是否存在这个变量,若没有的话,就会在上层作用域查找,这样就会形成一条作用域链作用域和作用域链是在函数定义的时候,就确定好的(我们可以借助浏览器的调试工具去查看)接下来我们可以看三种情况情况一,全局代码(具体流程见上面的内容)在执行log函数的时候,会现在自己的作用域中去查找变量,没有找到就会顺着作用域链去查找作用域链创建和VO在代码执行前就创建好的。原创 2023-12-31 22:51:37 · 862 阅读 · 0 评论 -
重学JavaScript高级(二):深入浏览器的渲染原理
当有了DOM Tree 和CSSOM Tree 就可以将两个结合,一同构建Render Tree了。在解析过程中,如果遇到CSS的link元素,那么会由浏览器下载对应的CSS文件。告诉浏览器不要等待脚本的下载,而是继续解析HTML,构建DOM Tree。默认情况下,标准流中的内容都会被绘制在同一个图层之中(layer)浏览器在下载完CSS文件之后,就会解析CSS,生成相应的。为了解决当前的问题,script元素提供了两个属性。在现代页面开发中,这种形式会带来新的问题。而一些特殊的属性,会。原创 2023-12-31 22:50:56 · 760 阅读 · 0 评论 -
重学JavaScript高级(一):this指向面试题
【代码】重学JavaScript高级(一):this指向面试题。原创 2023-12-31 22:50:23 · 351 阅读 · 0 评论 -
重学JavaScript高级(一):this指向问题
默认绑定:在严格模式下,this指向就是undefined。创建一个函数的间接引用,使用的是默认绑定规则。隐式绑定:通过某个对象进行调用。原创 2023-12-31 22:47:57 · 788 阅读 · 1 评论