摘要:
(不可写,不可配置,可枚举,不可描述) Object.freeze() 方法可以冻结一个对象。 一个被冻结的对象再也不能被修改;(writable: false) 冻结了一个对象则不能向这个对象添加新的属性,不能删除已有属性;(configurable: false) 不能修改该对象已有属性的可枚举
阅读全文
posted @ 2021-01-17 16:43
我叫大王来巡山
阅读(226)
推荐(0)
摘要:
Object.assign(target, ...source) 1.Object.assign方法只会拷贝源对象自身(不包括原型)的并且可枚举的属性到目标对象,使用源对象的get和目标对象的set,所以会调用相关getter和setter。 通俗点说:源对象的属性值需要配置可枚举,enumerab
阅读全文
posted @ 2021-01-17 16:21
我叫大王来巡山
阅读(257)
推荐(0)
摘要:
1.Map可以使用任意类型的key值,不限字符串,对象等。 2.WeakMap只能使用对象作为key值,是弱引用,当从WeakMap中移除时,会自动垃圾回收 3.Object只能用基本类型作为key值。 下面使用WeakMap解决深拷贝中对象循环引用问题 function deepClone (or
阅读全文
posted @ 2021-01-06 23:05
我叫大王来巡山
阅读(1171)
推荐(0)
posted @ 2020-12-22 14:15
我叫大王来巡山
阅读(151)
推荐(0)
摘要:
//对输入金额进行校验 function clearNoNum(obj){ obj.value = obj.value.replace(/[^\d.]/g,""); //清除"数字"和"."以外的字符 obj.value = obj.value.replace(/^\./g,""); //验证第一个
阅读全文
posted @ 2020-12-15 14:45
我叫大王来巡山
阅读(154)
推荐(0)
摘要:
前言: 在vue项目中,由于功能比较多,需要各种条件控制某个功能、某个标签、表格中的某一行是否显示等,需要使用大量的v-if来判断条件。 例如: <div v-if="isShow(a, b)">this is a tag</div> <input v-model="c"></input> <scr
阅读全文
posted @ 2020-12-14 22:16
我叫大王来巡山
阅读(401)
推荐(0)
摘要:
ps:下面参数说的是Promise.resolve(x)中的x 一共四种情况: 1.如果参数是Promise实例本身,则抛出错误 2.如果参数是一个promise对象,则then函数的执行取决于这个参数的状态,如果参数也调用了resolve(y),其中y也是一个promise对象then函数的执行取
阅读全文
posted @ 2020-10-23 15:32
我叫大王来巡山
阅读(156)
推荐(0)
摘要:
上源码: export function set (target: Array<any> | Object, key: any, val: any): any { if (process.env.NODE_ENV !== 'production' && (isUndef(target) || isP
阅读全文
posted @ 2020-10-22 00:19
我叫大王来巡山
阅读(4863)
推荐(1)
摘要:
一、防抖 原理:在事件被触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时。 场景: 1.按钮提交场景,防止多次提交按钮,只执行最后一次的提交 2.搜索框联想场景,防止联想发送请求,只发送最后一次输入 简易版: function debounce (func, wait) { let time
阅读全文
posted @ 2020-10-21 23:40
我叫大王来巡山
阅读(178)
推荐(0)
摘要:
export function def (obj: Object, key: string, val: any, enumerable?: boolean) { Object.defineProperty(obj, key, { value: val, enumerable: !!enumerabl
阅读全文
posted @ 2020-10-21 13:16
我叫大王来巡山
阅读(1096)
推荐(0)