美文网首页早读让前端飞Web前端之路
JavaScript 模式之内置对象的原型 前端早读课第28期

JavaScript 模式之内置对象的原型 前端早读课第28期

作者: 知行社 | 来源:发表于2017-09-06 08:00 被阅读61次

软件和教堂非常相似——建成之后我们就在祈祷。

不在内置对象的原型上新增方法

写法

if (typeof Object.prototype.myMethod !== "function") {
  Object.prototype.myMethod = function () {
    // implementation...
  };
}

内置对象的原型上新增方法会降低代码的可维护性,让代码变得不可预测。如果要写一些内置对象的工具方法,用将对象做为参数传入的方式,如

function arrayEvery(array) {...}

Underscore.js 就是这么做的。

例外:只有在旧浏览器上实现新浏览支持的原型方法时,才在内置对象的原型上新增方法。如:

// some 是 ES6 中新出的方法。
if (typeof Array.prototype.some !== "function") {
  Array.prototype.some = function () {
    
  };
}

所有 JavaScript 模式:http://shichuan.github.io/javascript-patterns/

文章推荐

《【深度长文】JavaScript数组所有API全解密》

背景

数组是一种非常重要的数据类型,它语法简单、灵活、高效。 在多数编程语言中,数组都充当着至关重要的角色,以至于很难想象没有数组的编程语言会是什么模样。特别是JavaScript,它天生的灵活性,又进一步发挥了数组的特长,丰富了数组的使用场景。可以毫不夸张地说,不深入地了解数组,不足以写JavaScript。

概要

系统讲解了JavaScript数组的各种特性和API。包含了 ES6 新增一些新特性。

阅读地址:http://louiszhai.github.io/2017/04/28/array/

往期前端早读课地址:http://www.jianshu.com/c/0fda3d387a6d

相关文章

  • JavaScript 模式之内置对象的原型 前端早读课第28期

    软件和教堂非常相似——建成之后我们就在祈祷。 不在内置对象的原型上新增方法 写法 内置对象的原型上新增方法会降低代...

  • JS中的原型链

    在了解原型链之前,我们首先理解几个概念: JavaScript内置对象 所谓的内置对象 指的是:JavaScrip...

  • js进阶(二)

    第十二天 04-基础进阶-第02天{对象进阶、内置对象} 第十二天对象工厂模式创建对象构造函数模式创建对象原型模式...

  • JavaScript 原型

    原型 [[Prototype]] JavaScript 中的对象有一个特殊的 [[Prototype]] 内置属性...

  • JS进阶(2) —— 人人都能懂的原型对象

    凡是搞前端开发的或者玩 JavaScript 的同学都知道,原型对象和原型链是 JavaScript 中最为重要的...

  • 关于JavaScript创建对象的多种方式

    JavaScript创建对象的方法 工厂模式 构造函数模式 原型模式 组合使用构造函数模式和原型模式 动态原型模式...

  • 原型和原型链

    一、理解原型设计模式以及 JavaScript 中的原型规则 设计模式 工厂模式 在函数内创建一个对象,给对象赋予...

  • 2019-04-09

    轮播图 内置对象 面向对象 工厂模式 创建空对象 prototype 原型 var o = new Object(...

  • JavaScript 模式之获得全局对象 前端早读课第25期

    每一件绝世无双的好作品都是以无比寂寞的勤奋为前提,要么是血,要么是汗,要么是大把曼妙的青春时光。 获得全局对象 不...

  • JavaScript内置对象(22)

    JavaScript内置对象 全局对象window 全局函数 公共属性隐藏在哪里 toString从哪里来(原型链...

网友评论

    本文标题:JavaScript 模式之内置对象的原型 前端早读课第28期

    本文链接:https://www.haomeiwen.com/subject/rjlmjxtx.html