6-1通过原型继承创建一个新对象
来源:互联网 发布:win10录屏软件 编辑:程序博客网 时间:2024/05/16 07:33
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript">
function inherit(p){ //创建一个函数接收一个参数p p为一个对象
if(p == null) throw TypeError(); // p为空抛出错误 对象为空不接收任何属性和方法
if(Object.create) //检查有没有Object.create方法存在
return Object.create(p); //如果存在 返回Object.create(p)给函数 因为Object.create(p) 创建一个新对象 新对象的属性继承参数p对象的属性 函数继承参数p对象的属性
var t = typeof p; //参数p对象的类型 赋值给变量t
if(t !== "object" && t !== "function") throw TypeError(); //如果不是类型不是对象 并且 类型不是一个构造函数 例如 function aa(){} 因为构造函数本身是对象 原型是构造函数aa.prototype属性的值
function f(){}; //创建一个构造函数
f.prototype = p; //构造函数f的原型就是f.prototype属性的值p f属性继承原型属性 所以就继承p对象的属性
return new f(); //返回创建和初始化的新对象
}
var o = {x:13};
document.write(inherit(o).x); //函数inherit(o)继承对象o的属性x
/*
函数inherit(p)的返回值就是一个新对象 新对象的原型属性是参数p 对象的属性都继承原型属性prototype 因为新对象的原型型属性prototyp
的值是p对象 所以新创建的对象的属性继承自参数对象的属性
*/
</script>
</head>
<body>
</body>
</html>
- 6-1通过原型继承创建一个新对象
- 通过原型继承创建新对象
- 基于原型的对象创建和继承
- js加强:原型,创建对象分析,继承
- js 创建对象与原型链继承
- 继承已有对象创建新对象
- JS中“创建对象”及“通过原型创建对象”浅析
- JS中“创建对象”及“通过原型创建对象”浅析
- JS中“创建对象”及“通过原型创建对象”浅析
- JavaScript——对象属性、创建对象、继承、原型链
- javscript通过原型链方式显示对象继承
- js(十六)——原型创建对象和继承
- js构造函数,原型对象,继承 (1)
- 原型对象和继承
- 原型对象与继承
- 对象、原型、继承
- 原型对象--继承
- 面向对象--原型继承
- cocos2d-x 出错集。
- Foxit Reader出现脚本错误提示的解决方法
- NGUI简易背包
- JS压缩工具---yuicompressor
- PHP实现同服务器多个二级域名共享 SESSION 数据
- 6-1通过原型继承创建一个新对象
- Remove Duplicates from Sorted List II
- 如何解决php中并发读写文件冲突的问题
- C++模板实战5: 迭代器与容器
- 实现jqGrid列表 css和js文件加载顺序详解
- vxl cannot build with share libs
- 三硬币问题
- Makefile介绍
- 获取Owner属性值的两种方式---Owner