🗒️ JS深拷贝和浅拷贝

对于字符串类型,浅复制是对值的复制,对于对象来说,浅复制是对对象地址的复制,并没有开辟新的栈,也就是复制的结果是两个对象指向同一个地址,修改其中一个对象的属性,则另一个对象的属性也会改变,而深复制则是开辟新的栈,两个对象对应两个不同的地址,修改一个对象的属性,不会改变另一个对象的属性。

🗒️ VUE.JS 双向绑定实现原理Object.defineProperty()

vue.js 则是采用数据劫持结合发布者-订阅者模式的方式,通过Object.defineProperty()来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应的监听回调。创建 watcher 和 Compile 还不太明白,仍需要多加学习。

🗒️ ES6之reduce (可数组对象的去重)

ES6之reduce遍历数组,利用reduce可以进行对数组对象的去重

🗒️ ES6之promise

ES6之promise,promise对象是一个构造函数,用来生成Promise实例

🗒️ 遮罩层的实现

遮罩层的实现主要是利用 css。 元素相同的 z-index,遮罩层外面的 z-index 小于里面的

🗒️ http请求协议

HTTP通信机制是在一次完整的HTTP通信过程中,Web浏览器与Web服务器之间将完成下列7个步骤

🗒️ rgba与opacity的区别

rgba与opacity的区别以及在遮罩层的运用,设置了opacity的元素内的子元素们都被影响了,设置了opacity的元素它的子元素都继承了他的设置,透明度都是一样的.而rgba所设置的透明度,只会影响他自己本身,而其中的子元素不会被其所影响。

🗒️ Object.prototype.toString.call(value)

js原生方法Object.prototype.toString.call();它可以给出数据的确切类型,相比typeof要精确