站点介绍
标签 JavaScript 下的文章
一名小码农的日常,学习&生活
发布于2024-07-04
如何解决所谓的“回调地狱”?
在早期没有Promise的情况下,解决回调地狱确实是一个比较棘手的问题,但是如果项目不引入解决方案,往往会让代码后期非常复杂,难以维护。
什么是回调函数,以及它在异步编程中的作用和存在的缺点?
回调函数是前端开发中非常重要的编程方式,因为Javascript是支持函数式编程的,所以函数可以作为第一等公民传递给另一个函数。
generator+promist:用同步的形式编写异步代码
我们来看看如何使用generator+promist来实现同步的形式编写异步代码
Generator代码使用-返回值
通过看上面代码,并不是我们每用一次都要手动写一行代码这样看上去代码太冗余了,我们发现想可以将获取的返回值的代码优化,于是有了下面优化后的代码。
解释Javascript中的Proxy对象是什么以及它是如何工作的,用于哪些场景?
Proxy是ES6引入的一种新特性,运行我们创建一个代理对象来拦截并定制对另一个对象的基本操作,比如获取数据,设置数组,删除数据等。
Reflect在代码中的具体使用场景是怎样的?
在早期的ECMA规范中没有考虑到这种对`对象本身`的操作`如何设计会更规范`,所以将这些API放在了Object上。但是Object作为一个构造函数,这些操作实际上放到它身上并不合适。
认识Proxy:我们希望监听这个对象中的属性被设置或获取的过程要怎么办呢?
我们通过之前的了解可以指定使用Object.defineProperty,但是它有什么缺点呢? 首先,Object.defineProperty设计的初衷,不是为了去监听截止一个对象中所有属性的。其次,如果我们想监听更加丰富的操作,比如新增属性,删除属性,那么Object.defineProperty是无能为力的。
Javascript中this绑定的应用代码案例
Javascript中this绑定的应用代码使用让我们更加清楚的了解Javascript中this绑定的几种规则的优先级。
Javascript中this绑定的优先级规则是什么?
隐式绑定,显式绑定,New绑定,默认绑定,那么他们几个的优先级顺序是什么?
Javascript为什么要使用this关键字?
this关键字在Javascript以及其他面向对象的编程语言中比如Java,C++中存在的主要原因是为了提供一种在对象方法中引用当前对象的方式。
异步编程方案四-《await/async》
其实我们现在已经不是必须使用`Generator`来实现异步代码编写成同步代码的结构了
CSS3引入的主要新特性是什么?
其实并不存在正真意义上的CSS3定义,因为`CSS3`并不是一个单一的规范,而是**一系列独立模块的组合**,这些模块扩展了CSS3的功能。
在Javascript的script标签中,async属性和refer属性的区别是什么?
他们的机制不同,`defer属性`不会阻塞`DOM树`的渲染,并且defer属性的执行是在DOM树渲染之后`DOMContentLoaded`事件之前执行,还有就是多个`defer属性`执行是按照代码顺序执行的。
async属性是什么?它有什么作用?
`async`让js脚本的下载和执行是独立的。**浏览器不会因为async属性的script脚本的执行而阻塞**,这一点和`refer属性`类似。然而`async属性`比较任性,只要脚本被浏览器下载完成之后就会立即执行,不会等待在`DOMContentLoaded`之前执行。
defer属性在JavaScript标签中有什么作用?
defer属性 告诉我们,让页面不要等待 JavaScript语言 下载,而是继续执行 HTML 构建DOM树。脚本会由浏览器来执行下载,这个过程 不会阻塞构建DOM树 。如果脚本下载好了,他会等待 DOM树 构建好了,在DOMContentLoaded事件执行之前执行JavaScript程序defer中的代码。