JavaScript的继承的封装介绍

作者: 关于计算机  发布:2019-09-13

复制代码 代码如下:

/**
* 当调用此函数时,独有首先次参数字传送入,第1个不设有的图景下,就创立类
* 当调用此函数时,传入了五个参数,第3个参数为基类,第二个参数则在基类的底子上增添内容
*/
function extend(obj,prop){
function F(){

}
//倘使第二个参数为object类型(即json对象)的话,则将json的key value赋值给F函数的原型 F.prototype.key = value
if (typeof(obj) == "object") {
for(var name in obj){
F.prototype[name] = obj[name];
}
} else {//即便第一个参数为function类型的话,则将次函数的原型赋值给F函数,prop明确是传值的(json对象),所以将prop赋值给F函数的原型
F.prototype = obj.prototype;
for(var name in prop){
F.prototype[name] = prop[name];
}
}
return F;
}
//因为此处独有叁个参数,所以这时候会将json对象的key,value赋值给extend函数中的F函数的原型,然后用person变量接收F函数,此时person也成为了一个函数,此函数也装有了F函数的原型 name和sex
var person = extend({
name:"xxc",
sex:"man"
});
//将person函数字传送入,进入extend函数后,首先将person的原型赋值给F函数,然后将第2个参数hope:"more money"赋值给F函数,此时F函数的原型有八个东西name,sex,hope
//最终将F函数重临,导致person的原型也和F函数同样,有name,sex,hope
var person = extend(person,{
hope:"more money"
});
alert(person.prototype.name);//xxc
alert(person.prototype.sex);//man
alert(person.prototype.hope);//more money

复制代码 代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>function.html</title>

<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<script src="../jquery/jquery-1.10.2.min.js"></script>
<script src="extends2.js"></script>
<!--<link rel="stylesheet" type="text/css" href="./styles.css">-->

</head>

<body>
</body>
</html>

您或然感兴趣的稿子:

  • Javascript基于对象三大特色(封装性、承接性、多态性)
  • js中落到实处多态采纳和后续类似的措施
  • javascript 面向对象斩新理练之继续与多态
  • JavaScript多态与包装实例解析
  • javascript的函数、创设对象、封装、属性和议程、承接
  • JavaScript的模块化:封装(闭包),承继(原型) 介绍
  • javascript 面向对象封装与持续
  • js封装可选择的构造函数承袭用法深入分析
  • Javascript学习笔记9 prototype封装承接
  • 简单的说通晓JavaScript中的封装与后续性子
  • JavaScript兑现多态和后续的卷入操作示例

本文由今晚买四不像发布于关于计算机,转载请注明出处:JavaScript的继承的封装介绍

关键词:

上一篇:闭包详解
下一篇:没有了