使用Array.fill()填充引用类型数据的问题
生成一个长度为2的数组,内容为 {a: 1} 的对象填充使用Es6 Array.fill 方法生成写起来倒是简单粗暴: const arr = Array(2).fill({a: 1})然后问题就来了:尝试修改 arr 的第一项: arr[ ...
生成一个长度为2的数组,内容为 {a: 1} 的对象填充使用Es6 Array.fill 方法生成写起来倒是简单粗暴: const arr = Array(2).fill({a: 1})然后问题就来了:尝试修改 arr 的第一项: arr[ ...
纸上得来终觉浅😂,还是自己敲一遍才能深刻理解,先上代码https://justwe7.github.io/mvvm/index.html Vue运行机制 new Vue()之后会执行init,初始化data、props、生命周期、methods、computed、watch等。主要通过Object. ...
定义一个对象for...in遍历var num = -1 var o = { '1': 1, 'b': 'b', '3': 3, '0': 0, [num]: '-1', false: false, 'a': 'a', ...
方法 方法 描述 exec 一个在字符串中执行查找匹配的RegExp方法,它返回一个数组(未匹配到则返回null)。 /\S/.exec('abc') exec方法返回包含第一个匹配的的数组或null test 一个在字符串中测试是否匹配的RegExp方法,它返回true或false。 /\S/.test('abc') match 一个在字符串中执行查找匹配的String方法,它返回一个数组或者在未匹配到时返回null。 ...
发布—订阅模式又叫观察者模式,它定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知。在JavaScript开发中,我们一般用事件模型来替代传统的发布—订阅模式。 应用场景: 100个用户喜欢小四的写的小说,但是小四写小说需要时间,所以这100个人每隔一会就会问一下小四写完没(setInterval),小四卒... 小四的哥哥明姚也喜欢写小说,然后开通了一个微博,这100个用户都关注了(订阅),明姚写完发布一篇微博,用户都会收到( ...
静态资源 图像优化 WebP 图片压缩神器 使用字体代替icon 延迟加载 合理使用图片尺寸,如果用到小图片,就使用相应大小的图片,而不是将200x200的缩小为100x100。否则这其中就有(200x200)-(100x100)=30000个像素是浪费的,这占到了图片尺寸的75%! <img width=" ...
JavaScript规定了几种语言类型最新的 ECMAScript 标准定义了 7 种数据类型:6 种原始类型:BooleanNullUndefinedNumberStringSymbol (ECMAScript 6 新定义)和 ObjectJavaScript中的变量在内存中的具体存储形式在JS中,每一个数据都需要一个内存空间。内存空间又被分为两种,栈内存(stock)与堆内存(heap)。基础数据类型与栈内存JS中的基础数据类型, ...