- 博客(7)
- 收藏
- 关注
原创 call和apply
call和applycall和apply的区别Function.prototype.call 和 Function.prototype.apply 都是非常常用的方法。它们的作用一模 一样,区别仅在于传入参数形式的不同。apply 接受两个参数,第一个参数指定了函数体内this对象的指向,第二个参数为一个带下标的集合,这个集合可以为数组,也可以为类数组,apply 方法把这个集合中的元素作为参数传
2017-12-28 15:51:44 321
原创 this
this跟别的语言大相径庭的是,JavaScript的this总是指向一个对象,而具体指向哪个对象是在运行时基于函数的执行环境动态绑定的,而非函数被声明时的环境。this的指向除去不常用的with和eval,具体到实际应用中,this的指向大致可以分为以下4种:1. 作为对象的方法调用 2. 作为普通函数调用 3. 构造器调用 4. Function.prototype.call或Fun
2017-12-28 15:37:44 351
原创 面向对象的JavaScript --- 原型模式和基于原型继承的JavaScript对象系统
面向对象的JavaScript — 原型模式和基于原型继承的JavaScript对象系统原型模式和基于原型继承的JavaScript对象系统在 Brendan Eich 为 JavaScript设计面向对象系统时,借鉴了Self和Smalltalk这两门基于原型的语言。之所以选择基于原型的面向对象系统,并不是因为时间匆忙,它设计起来相对简单,而是因为从一开始Brendan Eich就没打算在 Jav
2017-12-28 13:14:17 643 1
原创 面向对象的JavaScript --- 封装
面相对象的JavaScript — 封装封装封装的目的是将信息隐藏。一般而言,我们讨论的封装是封装数据和封装实现。真正的封装为更广义的封装,不仅包括封装数据和封装实现,还包括封装类型和封装变化。 封装数据 封装实现 封装类型 封装变化 封装数据在许多语言的对象系统中,封装数据是由语法解析来实现的,这些语言也许提供了 private、public、protected 等关键字来提供不同的访问权限。但J
2017-12-28 12:26:44 370
原创 面向对象的JavaScript --- 多态
面向对象的JavaScript — 多态多态“多态”一词源于希腊文 polymorphism,拆开来看是poly(复数)+ morph(形态)+ism,从字面上我们可以理解为复数形态。多态的实际含义是:同一操作作用于不同的对象上面,可以产生不同的解释和不同的执行结果。换句话说,给不同的对象发送同一个消息的时候,这些对象会根据这个消息分别给出不同的反馈。从字面上来理解多态不太容易,下面我们来举例说明一
2017-12-28 12:06:55 343
原创 面向对象的JavaScript --- 动态类型语言
面向对象的JavaScript — 动态类型语言标签(空格分隔): JavaScript动态类型语言与面向接口编程JavaScript 没有提供传统面向对象语言中的类式继承,而是通过原型委托的方式来实现对象与对象之间的继承。 JavaScript 也没有在语言层面提供对抽象类和接口的支持。正因为存在这些跟传统面向对象语言不一致的地方,我们在用设计模式编写代码的时候,更要跟传统面向对象语言加以区别。所
2017-12-28 10:09:17 571
原创 敏捷开发与传统开发
敏捷开发与传统开发本文章谨代表个人人观点: 传统开发流程的局限性 传统手工测试的局限性 开发模式的转型 传统开发流程的局限性 1 自由度低 缺乏灵活性 2 缺陷发现晚,无法及时反馈 3 协同合作缺失,容易引起团队冲突 4 产品质量无法保证 传统手工测试的局限性 1 重复性工作,测试质量低 2 测试效率低 3 无法保证覆盖代码全路劲 4 无法兼顾多平台,多浏
2017-09-14 17:14:39 701
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人