文档章节

js实现函数继承(杜绝源数据污染)

 甜酒0917
发布于 2016/12/08 17:02
字数 130
阅读 42
收藏 0

码上生花,ECharts 作品展示赛正式启动!>>>

e5中一般的对象继承,无论是浅还是深对于函数对象都是引用,本例子根据toString()和new Function()及eval动态执行字符串 实现无污染加强版深继承

var func=function(a,b,c){
		    alert(a+b+ c);
	}
var str=func.toString();
var str1=str.slice(str.indexOf("(")+1,str.indexOf(")"));
var str2=str.slice(str.indexOf("{")+1,str.lastIndexOf("}"));

var ary1=str1.split(",");
var ary=[];
for(var i=0;i<ary1.length;i++){
  ary.push("'"+ary1[i]+"'");
}
  ary.push("'"+str2.replace(/\n\r/g,"")+"'");

var  strResult=ary.join(",");
console.log(strResult)
var result=eval("new Function("+strResult+")");
	
result(1,2,3)

 

© 著作权归作者所有

粉丝 1
博文 13
码字总数 3450
作品 0
武汉
私信 提问
加载中
请先登录后再评论。
前端(十三)—— JavaScript高级:回调函数、闭包、循环绑定、面向对象、定时器

回调函数、闭包、循环绑定、面向对象、定时器 一、函数高级 1、函数回调 回调函数在系统中的使用: 对页面进行点击,点击以后,对外传送数据,数据包括点击的位置 系统已经书写好这种函数的回...

osc_excb6jgz
2018/10/16
3
0
[JavaScript] 前端模块编程实现

前端模块化 前端早期写代码都是全局变量满天飞,这种情况会造成全局命名空间污染,变量冲突等问题 后来采用了 js 的对象写法,添加一个单独的命名空间 这样就把变量挂载到 space 上了,而不是全...

osc_4mawo3g6
2019/01/01
2
0
讲清楚 JavaScript 原型

记得以前知乎上看到过一个问题:面试一个 5 年的前端,却连原型链也搞不清楚,满口都是 Vue,React 之类的实现,这样的人该用吗? 。写文章的时候又回去看了下这个问题,300 多个回答,有很多...

余腾靖
01/28
0
0
JavaScript 继承 封装 多态实现及原理详解

面向对象的三大特性 封装 所谓封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。封装是面向对象的特征之一,是对象和...

开元中国2015
2019/07/30
37
0
web前端面试题-JavaScript篇(持续更新...)

1,介绍js的基本数据类型。 Undefined、Null、Boolean、Number、String 2,介绍js有哪些内置对象? Object 是 JavaScript 中所有对象的父对象 数据封装类对象:Object、Array、Boolean、Num...

关系:instance.constructor.prototype = instance.__proto__
2019/11/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Synchronized底层实现

https://blog.csdn.net/qq_35190492/article/details/106180781

JaneRoad
今天
18
0
解决okhttp无法重用连接的问题

解决okhttp无法重用连接的问题 最近在一个程序中使用okhttp调用http接口。开始时一切正常,但是测试运行一段时间后,okhttp就会报告recv失败。同时在调用端机器上,netstat显示很多套接字是T...

tommwq
今天
17
0
入坑Linux-day15(使用DHCP动态管理主机地址)

一、动态主机配置协议(DHCP) #DHCP是一种基于UDP协议且仅限于在局域网内部使用的网路协议,主要用于大型的局域网环境或者存在较多移动办公设备的局域网环境中,其主要用途是为局域网内部的...

宁生写你
今天
8
0
js canvas 旋转90度的整数倍

为了避免出现黑框 效果如下 根据不同的方向,设置宽高和画笔位置等 <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"/> <title>Title</title> <style> .img ......

阿豪boy
今天
22
0
如何生成随机的字母数字字符串? - How to generate a random alpha-numeric string?

问题: I've been looking for a simple Java algorithm to generate a pseudo-random alpha-numeric string. 我一直在寻找一种简单的 Java算法来生成伪随机的字母数字字符串。 In my situat......

技术盛宴
今天
19
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部