js
文章平均质量分 68
杨爽的博客
本人已转行,此账号内容不会删除!一些基础皮毛,有需要者可自行观看,私聊不回,勿扰谢谢!
展开
-
async/await和promises的区别及怎么去使用
1、Async/await 是建立在 Promises上的,不能被使用在普通回调以及节点回调2、Async/await 和 Promises 很像,不阻塞3、Async/await 代码看起来像同步代码。语法假设函数getJSON返回值是 Promise,并且 Promise resolves 有一些JSON 对象。我们只想调用它并且记录该JSON并且返回完成。使用Promiseconst makeRequest = () => getJSON() .then(data =.原创 2021-09-02 10:26:40 · 417 阅读 · 1 评论 -
前端开发代码规范2021
规范的目的是为了编写高质量的代码,让你的团队成员每天得心情都是愉悦的,大家在一起是快乐的。现代软件架构的复杂性需要协同开发完成,如何高效地协同呢?无规矩不成方圆,无规范难以协同,比如,制订交通法规表面上是要限制行车权,实际上是保障公众的人身安全,试想如果没有限速,没有红绿灯,谁还敢上路行驶。对软件来说,适当的规范和标准绝不是消灭代码内容的创造性、优雅性,而是限制过度个性化,以一种普遍认可的统一方式一起做事,提升协作效率,降低沟通成本。代码的字里行间流淌的是软件系统的血液,质量的提升是尽可能少踩坑,杜绝踩原创 2021-07-09 09:05:57 · 387 阅读 · 1 评论 -
闭包以及使用场景详解
什么是闭包:要理解闭包,首先理解javascript特殊的变量作用域,变量的作用于无非就是两种:全局变量,局部变量。javascript语言的特殊处就是函数内部可以读取外部作用域中的变量。我们有时候需要得到函数内的局部变量,但是在正常情况下,这是不能读取到的,这时候就需要用到闭包。在javascript语言中,只有函数内部的子函数才能读取局部变量,因此可以把闭包简单理解成“定义在一个函数内部的函数”。闭包是指有权访问另一个函数作用域中的变量的函数。其本质是函数的作用域链中保存着外部函数变量对象的引用原创 2021-05-31 12:01:55 · 3000 阅读 · 0 评论 -
ajax兼容性问题
IE: ActiveXObject其他: xmlHttpReuest在IE6以前不是用XMLHttpRequest创建的,所以我们要兼容ie6以前的浏览器要判断他有没有XMLHttpRequest()跨浏览器兼容性解决方法:<script> window.onload = function(){ var oBtn = document.getElementById('btn'); oBtn.onclick = function(){ //1.创建ajax对象 /原创 2021-05-31 09:16:30 · 248 阅读 · 0 评论 -
Ajax摘要
什么是ajax?ajax作用是什么?AJax = 异步 JavaScript 和 XML ;是一种用于创建快速动态网页的技术, 通过在后台与服务器进行少量数据交换。作用:Ajax可以实现动态不刷新(局部刷新)就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。为什么要用ajax?Ajax应用程序的优势在于:通过异步模式,提升了用户体验优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用Aja原创 2021-04-26 21:45:02 · 300 阅读 · 0 评论 -
前端js面试题大全2020
1、介绍一下js的数据类型有哪些,值是如何存储的?基本数据类型:Number、String、Boolean、null、undefined、Symbol(es6新增,表示独一无二的值)和 Bigint(es10新增)引用类型:object原始数据类型:直接存储在栈(stack)中,占据空间小、大小固定,属于被频繁使用数据,所以放入栈中存储。引用数据类型:同时存储在栈(stack)和堆(heap)中,占据空间大、大小不固定。引用数据类型在栈中存储了指针,该指针指向堆中该实体的起始地址。当解释器寻找引原创 2020-11-12 21:52:34 · 487 阅读 · 0 评论 -
Javascript原型与原型链(重点)
概念构造函数,原型和实例的关系:每个构造函数(constructor)都有一个原型对象(prototype),原型对象都包含一个指向构造函数的指针,而实例(instance)都包含一个指向原型对象的内部指针.js对象的圈子里有这么个规则:如果试图引用对象(实例instance)的某个属性,会首先在对象内部寻找该属性,直至找不到,然后才在该对象的原型(instance.prototype)里去找这个属性.如果让原型对象指向另一个类型的实例 ------->>即: con原创 2020-11-10 16:23:30 · 245 阅读 · 0 评论 -
手写防抖和节流函数
节流(throttle)规定在一个单位时间内,只能触发一次函数。如果这个单位时间内触发多次函数,只有一次生效。场景????scroll滚动事件,每隔特定描述执行回调函数input输入框,每个特定时间发送请求或是展开下拉列表,(防抖也可以)节流重在加锁 flag = falsefunction throttle(fn, delay) { let flag = true, timer = null return function(...args) {原创 2020-11-10 15:53:09 · 1077 阅读 · 0 评论 -
深拷贝和浅拷贝的区别?以及如何实现?
概念:浅拷贝只复制指向某个对象的指针,而不复制对象本身,新旧对象还是共享同一块内存。浅拷贝只复制对象的第一层属性。深拷贝会另外创造一个一模一样的对象,新对象跟原对象不共享内存,修改新对象不会改到原对象。对对象的属性进行递归复制。实现方式浅拷贝使用Object.assign({},obj)第一个参数是一个空对象,第二个参数是你要复制的对象;通过这个方法我们知道浅拷贝不能修改基础的数据类型,可以修改引用的数据类型;ES6中的…扩展运算符来进行浅拷贝的实现;Object.as原创 2020-11-10 15:34:37 · 475 阅读 · 0 评论