模仿JQuery.extend函数扩展自己对象的js代码

news/2024/7/10 23:55:09 标签: 扩展, function, object, jquery, reference, div
<div id="article_content" class="article_content clearfix"> <div id="content_views" class="htmledit_views">

如果要在之前写好的对象中添加新的静态方法或实例方法,要修改原有的对象结构,于是查看了jquery了extend方法,果然extend方法支持了jq的半边天,拿来主义,给自己的对象做扩张用。
下面进入正题: 
假如有以下一个对象 

 

对象名MyMath,有两个静态方法Add和Sub,正常调用: 

 

好,现在如果现在MyMath增加两个静态方法(乘法、除法)怎么办,并且不要修改之前写好的对象,以前我们可以这么做: 

 

这样,我们给MyMath添加两个方法:Mul和Div。正常调用:

 

但是,刚才增加方法的写法有点笨拙,每增加一个方法都要写一次对象名(MyMath),能不能想之前我们创建对象的时候那样,通过Json的结构去声明一个对象呢? 
答案当然是可以了,通过模拟JQuery.extend函数,轻松做到。以下提取JQuery.extend函数并修改了函数名: 

 

现在我们通过这个extend方法来增加刚才我们的方法(乘法、除法): 

 

 

div> div> <div id="treeSkill">div>

http://www.niftyadmin.cn/n/1790649.html

相关文章

带参宏定义

带参宏定义 转自&#xff1a;http://blog.csdn.net/swpu_yx32/article/details/52858684 C语言允许宏带有参数。在宏定义中的参数称为形式参数&#xff0c;在宏调用中的参数称为实际参数&#xff0c;这点和函数有些类似。 对带参数的宏&#xff0c;在调用中&#xff0c;不仅要宏…

js 与或运算符 || 妙用

首先出个题&#xff1a; 假设对成长速度显示规定如下&#xff1a; 成长速度为5显示1个箭头&#xff1b; 成长速度为10显示2个箭头&#xff1b; 成长速度为12显示3个箭头&#xff1b; 成长速度为15显示4个箭头&#xff1b; 其他都显示都显示0各箭头。 用代码怎么实现&#xff1…

使用acme.sh撸一个免费且自动更新的HTTPS证书

前言 一直想撸一下https&#xff0c;最近刚好有点空&#xff0c;就实现了一下。之前看过一篇教你快速撸一个免费HTTPS证书的文章&#xff0c;通过Certbot来管理Lets Encrypt的证书&#xff0c;使用前需要安装一堆库&#xff0c;觉得不太友好。所谓条条大路通罗马&#xff0c;肯…

关于C# 中使用open xml sdk 读取Excel数据笔记

项目用到open xml SDK &#xff0c; 开始的时候一脸懵逼&#xff0c; 网上有很多的案例 也看好多的案例&#xff0c; 还是决定自己总结一下自己的做法 &#xff1a; 1、要在项目中用到open xml SDK 得先下载Open XML SDK 2.5 for Office 下载路径&#xff1a;https://www.micro…

Promise 的then 里发生了什么

Promise 大家都知道怎么用&#xff0c; 但是对于内部的原理很多人都不是很清楚 来看一个面试题&#xff1a; Promise的then 是怎么实现的 首先来分析一下then then是属于实例上的方法参数有2个&#xff0c;分别为onFulfilled, onRejected&#xff0c;并且都是可选的可以实现链…

如何扩展JQUERY API

扩展JQUERY内部API:两种方法 jQuery.extend({ siren:function(){ alert(123) } }) $.extend({ siren:function(){ alert(333) } }) 调用方法是 jQuery.siren(); 如果针对组件的功能扩展函数: 重载某方法 $.fn.hightlight function(colorName) { this.mouseover(fu…

JDBC(2)—Statement

介绍&#xff1a; 获取到数据库连接之后&#xff0c;就可以对数据库进行一些增、删、改操作&#xff0c;但是却不能进行查询操作。 增删改操作是程序到数据库的一个操作过程&#xff0c;但是查询是程序到数据库——数据库返回到程序的一个过程。步骤&#xff1a; 步骤&#x…

linq 的使用方式 筛选 查找 去重

1.筛选 $.Enumerable.From(value).Where(function(x) {//value 为被操作的内容 return x.name name;//第一个name为value中的属性名称 第二个name是筛选条件 即属性值为name 多个条件 并且 用&&符号 或者用 || }).ToArray();//筛选后返回 array类型 2.查找 $.Enumera…