前端开发

flex属性实战解读

2019-07-13179次阅读flexbox
flex是Flex项目属性是flex-grow、flex-shrink和flex-basis属性的简写。
前端开发

JavaScript函数闭包

2019-07-13116次阅读javascript
《JavaScript高级程序设计》: 闭包是指有权访问另一个函数作用域中的变量的函数 《JavaScript权威指南》: 从技术的角度讲,所有的JavaScript函数都是闭包:它们都是对象,它们都关联到作用域链。 《你不知道的JavaScript》 当函数可以记住并访问所在的词法作用域时,就产生了闭包,即使函数是在当前词法作用域之外执行。
前端开发

防抖函数与节流函数的区别

2019-07-12197次阅读javascript
防抖函数的作用就是控制函数在一定时间内的执行次数。防抖意味着N秒内函数只会被执行一次,如果N秒内再次被触发,则重新计算延迟时间。节流函数的作用是规定一个单位时间,在这个单位时间内最多只能触发一次函数执行,如果这个单位时间内多次触发函数,只能有一次生效。
前端开发

CSS选择器链或组中出现无效的伪选择器会怎样

2019-07-12163次阅读css
如果选择器链或组中有无效的伪元素或伪类,则整个选择器列表无效。如果伪元素(但不是伪类)具有-webkit-前缀,那么对于Firefox 63,Blink、Webkit和Gecko浏览器认为它是有效的,而不会使选择器列表无效。
前端开发

如何实现JS数组去重

2019-07-12112次阅读javascript
利用ES6新增数据类型Set、indexOf、includes、reduce、Map
前端开发

ES5有几种方式可以实现继承?分别有哪些优缺点?

2019-07-11277次阅读javascript
ES5有6种方式可以实现继承,分别为:原型链继承、借用构造函数、组合继承(原型链 + 借用构造函数)、原型式继承、寄生式继承、寄生组合式继承
前端开发

如何让 (a == 1 && a == 2 && a == 3) 的值为true?

2019-07-10156次阅读javascript
利用隐式类型转换、利用数据劫持(Proxy/Object.defineProperty、数组的toString接口默认调用数组的join方法实现
前端开发

javascript柯里化函数实现

2019-07-10114次阅读javascript
函数柯里化是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数的技术。
前端开发

ES6可迭代对象有哪些特点

2019-07-10138次阅读javascript
ES6规定,默认的`Iterator`接口部署在数据结构的`Symbol.iterator`属性,换个角度,也可以认为,一个数据结构只要具有`Symbol.iterator`属性(`Symbol.iterator`方法对应的是遍历器生成函数,返回的是一个遍历器对象),那么就可以其认为是可迭代的。
前端开发

javascript深拷贝和浅拷贝的区别是什么?实现一个javascript深拷贝

2019-07-09148次阅读javascript
深拷贝和浅拷贝是针对复杂数据类型来说的,浅拷贝只拷贝一层,而深拷贝是层层拷贝。