摘要: 当我们使用原型链继承时,需要谨慎的定义原型上的方法和属性,因为这可能带来意外的结果。 一、谨慎的定义原型上的方法。当我们想为一个构造函数的原型上定义一个方法时,一定要在更改原型后再定义,否则新的原型对象上不会有定义的这个方法,导致与我们预期的结果不同。例: 正确操作如下 二、不要使用对象字面量给原型 阅读全文
posted @ 2017-09-05 19:55 fxf111 阅读(226) 评论(0) 推荐(0)
摘要: bind()方法可以改变一个方法中的this,并且不立即执行该方法,但是该方法存在兼容性问题,IE9+,ff4+,chrome7+支持此方法,opera和safari不支持。因此我们需要使用apply()方法来解决bind()兼容性问题。 阅读全文
posted @ 2017-09-05 19:53 fxf111 阅读(1045) 评论(0) 推荐(0)
摘要: 我们知道,Array.prototype上有一个slice()方法,可以对数组进行克隆,但是这个方法并不完美。如果一个数组是一维数组,使用slice()方法没有任何问题,但如果是一个多维数组,那么这个方法就不是那么完美了。 有些时候,我们想复制一个内容一样,但互不影响的数组,单纯使用slice()方 阅读全文
posted @ 2017-09-05 19:51 fxf111 阅读(232) 评论(0) 推荐(0)
摘要: 通常,我们获取浏览器可视窗口的宽高都是使用如下代码: 以获取浏览器可视窗口高度为例,如果document.documentElement.clientHeight不为0,则将document.documentElement.clientHeight的值赋给h,否则将document.body.cli 阅读全文
posted @ 2017-09-05 19:49 fxf111 阅读(1174) 评论(0) 推荐(0)