1,在内存中创建一个新的对象
2,让this指向这个新的对象
3,执行构造函数中的代码
4,return
push():在数组的最后添加一个或多个元素,原数组改变
,pop():删除最后一个元素,若数组为空 则返回undefined 原数组改变
,shift():删除第一项,并返回被删除的元素 若数组为空 返回undefined 改变原数组
,unshift():在数组的开头添加一个或多个元素 并返回数组长度 原数组改变,
splice():,sort(),reverse(),mop()
2,.clearfix
3,给父级添加over-flow:hidden
让一段文字具有段落的语义
闭包是指有权访问另一个函数作用域中的变量的函数
闭包就是函数的局部变量集合,只是这些局部变量在函数返回后会继续存在。
1,匿名自执行函数:有的函数只需执行一次,内部的变量不需维护 ,可以用闭包
2,结果缓存:闭包不会释放外部的引用,从而函数内部的值可以保留
3,封装:实现类和继承的封装
如何判断一个数组和类数组 1.instanceof console.log(arr instanceof Array) 2,constructor console.log(arr.constructor) 3,isArray()
call和apply的区别 每个函数都包含两个非继承而来的方法:apply()和call()。; call与apply都属于Function.prototype的一个方法,所以每个function实例都有call、apply属性; call():第一个参数是this值没有变化,变化的是其余参数都直接传递给函数。在使用 call()方法时,传递给函数的参数必须逐个列举出来。 apply():传递给函数的是参数数组
阐述一下CSS Sprites及其优点 优点:1,减少对服务器的请求,从而大大提升页面性能 2减少图片的字节(图片大小)
什么是闭包,如何使用它,为什么要使用它?