JavaScript
文章平均质量分 51
努力学习的米
记录
展开
-
JS刷题中遇到的知识点(1)
给网页添加JavaScript的方式有(1)使用script标签,把JavaScript代码写到script标签中(2)添加外部JavaScript文件(3)使用行内JavaScript(4)使用import引入JavaScript文件。reflow例如某个子元素样式发生改变,直接影响到了其父元素以及往上追溯很多祖先元素(包括兄弟元素),这个时候浏览器要重新去渲染这个子元素相关联的所有元素的过程称为回流。不过需要注意的是,此方法无法检查该对象的原型链中是否具有该属性,该属性必须是对象本身的一个成员。...原创 2022-07-20 19:57:05 · 235 阅读 · 0 评论 -
手写call、apply、bind方法
手写apply方法思路:判断调用apply方法的是否是函数,如果是继续,如果不是,报错新建一个对象obj来调用这个函数创建一个fn函数来作为被调用的函数在结束调用后删除这个函数手写bind思路:判断是否是函数调用,如果是,继续,如果不是,报错返回函数判断函数的调用方式,是否是new出来的,如果是,返回空对象,并且使创建出来的__proto__指向 this的prototype属性如果不是new出来的,改变this的指向call、apply、bind方法有什么不同...原创 2022-06-24 18:35:20 · 81 阅读 · 0 评论 -
JavaScript -- 闭包
在了解闭包之前,我们要明白什么是作用域:变量的作用域分为两个:全局作用域和局部作用域什么是作用域链?一、什么是闭包?我们可以理解为函数嵌套函数,里面被嵌套的那个函数就是闭包函数二、闭包函数有什么特点?三、闭包有什么应用?封装一段代码,实现模块化四、闭包的优缺点......原创 2022-06-24 11:24:54 · 186 阅读 · 0 评论 -
JS中的解构赋值
js中数组解构赋值和对象解构赋值的小例子原创 2022-06-23 15:47:05 · 273 阅读 · 0 评论 -
promise、async、await
一、promisepromise构造函数是同步任务,promise.then()是异步任务中的微任务。promise.then()如果在promise里没有resolve参数或者reject参数的时候,promise.then()是不执行的二、asyncasync可以理解为promise对象的一种简写,他的返回值是一个promise对象,不可以和回调函数一起搭配使用,可以直接运用 .then 方法,他最大的意义就是让异步代码在形式上更接近于同步代码三、await...原创 2022-06-23 11:47:34 · 164 阅读 · 0 评论 -
JS中call、apply、bind方法
一、call1.call可以调用函数:2.call可以改变this的指向3.call可以传参 :(1).只传一个参数(a),那么a是this改变后的指向的对象: function.call(a)(2).传两个参数(a,b),a是this改变后的指向的对象,b是你要传的参数,(call传的参数传到哪?传到调用call的那个函数上):function.call(a,b)(3).传多个参数(a,b,c),a是this改变后的指向的对象,b和c是你要传的参数 二、applyapply和call都可以调用函数,有什么原创 2022-06-23 10:34:51 · 667 阅读 · 0 评论 -
JavaScript深拷贝与浅拷贝
浅拷贝是新增了一个指针指向原来对象的地址(此时原来的指针和后来拷贝新增的指针都指向原来的指针指向的地址),改变拷贝来的对象的属性,原来的对象相应属性也会随之改变;而深拷贝不仅新增了一个指针,还开辟了一个新的内存空间来存储拷贝来的对象(此时原来的指针还是指向原来的地址,而新增的指针指向新开辟的地址),改变拷贝来的对象的属性,原来的对象相应的属性不会改变。 ...原创 2022-06-21 16:20:33 · 187 阅读 · 0 评论