- 博客(20)
- 收藏
- 关注
原创 ECMAScript 5 特性和ECMAScript 6
/ target: 'https://www.vue-js.com/api', // 跨域的域名(不需要写路径)// // 'https://www.vue-js.com/api/v1/topics', //完整地址。// 'https://www.vue-js.com/api/v1/topics', //完整地址。// '/api': { // /api :表示拦截以/api开头的请求路径。// '^api': '' // 把/api变为空字符串。
2024-01-18 18:08:39
342
1
原创 my面试题
缓存拦截器:缓存拦截器 '用于在本地缓存中存储请求结果',以减少对服务器的请求次数。如果请求的URL和参数与之前的请求相同,则可以从缓存中获取结果,而不必再次发送请求。请求超时拦截器:请求超时拦截器用于在请求'超时时取消请求并处理超时错误'。请求重试拦截器:请求重试拦截器用于在网络错误或服务器错误时自动重试请求。例如,在请求时发生网络错误,可以在拦截器中显示错误提示,或者在响应中返回特定的错误代码和消息。日志拦截器:日志拦截器'用于记录请求和响应的详细信息',例如请求URL、参数、响应代码、响应时间等。
2024-01-18 18:06:52
320
1
原创 object.hasOwnProperty,Object.getOwnPropertyNames()
Object.getOwnPropertyNames(object):返回对象自己的属性的名称,组成一个数组中。一个对象的自己的属性是指直接对该对象定义的属性,而不是从该对象的原型继承的属性。person.prototype.hasOwnProperty("singsong"))确定某个对象原型上,是否具有带指定名称的属性。object.hasOwnProperty(proName):确定某个对象自身上,是否具有带指定名称的属性。
2024-01-18 18:02:12
380
1
原创 ECMAScript 5 是什么?
ECMAScript 5 也称为 ES5 和 ECMAScript 2009。本章介绍 ES5 的一些最重要的特性。
2024-01-18 17:24:07
350
1
原创 es6新增特性总结
/[0,0,0,4,5] //参数1表示目标值,参数2,3表示替换的始末位置,左闭右开区间。//[0,4,0,4,5] //参数1表示修改的起始位置,参数2,3表示用来替换的数据的始末位置,左闭右开区间。函数可接受3个参数:第一个表示将被转换的可迭代对象,第二个是回调函数,将对每个数组元素应用该回调函数,然后返回新的值到新数组,第三个是回到函数内this的指向。后两个参数是可选的。数组的index就是属性名,当使用assign方法时,从第0位开始,目标数组的值便开始被源数组的值覆盖了。
2024-01-18 17:15:33
883
1
原创 hasOwnProperty(propertyName)方法 是用来检测属性是否为对象的自有属性
hasOwnProperty(propertyName)方法 是用来检测属性是否为对象的自有属性,如果是,返回true,否者false;参数propertyName指要检测的属性名。
2024-01-02 04:36:47
346
1
原创 如何对日期对象和正则表达式对象进行深拷贝
/ 如果属性值是对象,则需要递归去调用拷贝函数。// 创建新的正则表达式对象。// 如果已经拷贝过,直接返回即可。// 创建新的日期对象。// 以当前对象为键,新对象为值。
2023-12-21 17:37:33
342
原创 js延时器
`setImmediate` 尽可能快地在当前事件循环的下一个迭代中执行函数。- `setInterval` 在指定的时间间隔内重复执行函数,直到取消。- `setTimeout` 在指定的延迟时间后执行函数,只执行一次。
2023-12-19 16:17:20
370
原创 判断一个对象为空对象的几种方法
方法1:将对象转换成字符串(toString(),String(),JSON.stringift()),再判断是否等于“{}”方法3:Object.getOwnPropertyNames方法获取对象的属性名,存到数组中,若长度为0,则为空对象。方法4:jQuery中的isEmptyObject()方法,(其原理是利用for in的方式来判断)方法2:Object.keys()方法,返回对象的属性名组成的一个数组,若长度为0,则为空对象。//若不为空,可遍历,返回false。
2023-12-19 16:08:39
595
原创 async/await原理如下
简而言之,async/await原理如下:async函数定义一个异步函数,await暂停异步函数的执行,直到后面任务完成以后才会继续执行;内部实现使用Promise,每一次的await就是Promise.then(),并且async函数最终会被转换为Promise对象,可以被Promise.then()和Promise.catch()捕获。
2023-12-19 16:01:42
351
原创 以下是实现数组扁平化的8种方式:
1. 使用递归function flatten(arr) { let result = []; arr.forEach(item => { if (Array.isArray(item)) { result = result.concat(flatten(item)); } else { result.push(item); } }); return result;}----------------4. 使用 flat 方法(ES
2023-12-19 15:30:24
343
原创 要判断一个字符串中出现最多的字符及其次数,同样可以使用 JavaScript 来完成
/ 2遍历记录对象,找到出现次数最多的字符。// 创建一个对象来记录每个字符出现的次数。// 1遍历字符串,统计每个字符出现的次数。
2023-12-19 15:26:24
373
原创 vue3中ref和shallowRef会同步更新
vue3中什么ref和shallowRef,定义一个对象类型数据,先点击shallowRef数据不会变,在去点击ref定义的数据,shallowRef定义的数据也会变。
2023-12-18 01:18:44
67
原创 atch去监听ref和rective
在vue3中用watch去监听ref和rective一个对象或者数组,为什么无法得到最初值或者说变化之前的值。
2023-12-18 01:13:30
19
原创 延时器区别
定时器(setInterval):每隔就执行一次,原来原快,最好执行清理一次。延时器(setTimeout): 执行一次就不执行了,必须在次调用才执行。
2023-12-10 22:08:55
24
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人