-
-
functionClassA(id){
-
this.id=id;
-
this.sayId=function(){
-
alert(this.id);
- };
- }
-
-
functionClassB(id,name){
-
this.newMethod=ClassA;
-
this.newMethod(id);
-
deletethis.newMethod;
-
-
this.name=name;
-
this.sayName=function(){
-
alert(this.name);
- };
- }
-
-
functionClassB(id,name){
-
ClassA.call(this,id);
-
-
this.name=name;
-
this.sayName=function(){
-
alert(this.name);
- };
- }
-
-
functionClassB(id,name){
-
ClassA.apply(this,newArray(id));
-
-
this.name=name;
-
this.sayName=function(){
-
alert(this.name);
- };
- }
-
-
functionClassA(id){
-
this.id=id;
- }
-
ClassA.prototype.sayId=function(){
-
alert(this.id);
- };
-
functionClassB(id,name){
-
ClassA.call(this,id);
-
this.name=name;
- }
-
ClassB.prototype=newClassA();
-
ClassB.prototype.sayName=function(){
-
alert(this.name);
- }
对象能够执行prototype 属性定义的方法,是因为用构造方法生成的对象和构造方法之间有紧密联系,对象寻找属性时,如果自己没有这个属性,会在构造方法的propotype所指向/引用的对象中找,看能否找到同名属性,如果找到,就会读取它的值并返回.(这个过程会持续向上,直到持续到Object对象为止,即所谓原型方式的继承).
-
varo={};
-
o.eat=function(){return"3432";};
-
o.pass=function(text){this.name=text;};
-
varHuman=newFunction();
- Human.prototype=o;
-
vartt=newHuman();
使用prototype与apply实现类继承的模拟。用prototype把父类的公有方法与公有变量加入到子类中去。在子类构造方法中,用apply执行父类的构造方法。
-
functionParent()
-
{
-
this.pname="parentName";
-
this.say=function(){alert(this.pname)};
-
this.tell=function(){alert(this.pname+"tell")};
- }
-
functionSon()
- {
-
-
Son.prototype=newParent();
-
Parent.apply(this);
-
this.sname="sonName";
-
this.say=function(){alert(this.sname)};
-
this.talk=function(){alert(this.sname+"talk")};
- }
用js实现自已定义的类体系
-
varPerson={
-
Create:function(name,age){
-
this.name=name;
-
this.age=age;
- },
-
SayHello:function(){
-
alert("Hello,I'm"+this.name);
- },
-
HowOld:function(){
-
alert(this.name+"is"+this.age+"yearsold.");
- }
- };
-
-
functionFun(){Person.Create("dd","ss");};
-
Fun.prototype=Person;
-
-
-
-
-
varp=newFun();
-
p.SayHello();
新的基本对象创建
-
varTObject={
-
IsA:function(aType)
- {
-
varself=this;
-
if(self.Type==aType)
-
returntrue;
- self=self.Type;
-
while(self)
- {
-
if(self.ParentType==aType)
-
returntrue;
- self=self.ParentType;
- };
-
returnfalse;
- }
- };
-
functionClass(aBaseClass,aClassDefine)
- {
-
functionclass_()
- {
-
this.ParentType=aBaseClass;
-
for(varmemberinaClassDefine)
-
this[member]=aClassDefine[member];
- };
- class_.prototype=aBaseClass;
-
returnnewclass_();
- };
-
functionNew(aClass,aParams)
- {
-
functionnew_()
- {
-
this.Type=aClass;
-
if(aClass.create)
-
aClass.create.apply(this,aParams);
- };
- new_.prototype=aClass;
-
returnnewnew_();
- };
- Person2=Class(TObject,{
-
T2:'sdfsd',
-
create:function(name,age)
- {
-
this.name=name;
-
this.age=age;
- },
-
sayHello:function()
- {
-
alert(this.name+''+this.age);
- }
- });
分享到:
相关推荐
JavaScript bom操作 window对象的方法 示例代码JavaScript bom操作 window对象的方法 示例代码JavaScript bom操作 window对象的方法 示例代码JavaScript bom操作 window对象的方法 示例代码JavaScript bom操作 ...
JavaScript之Date对象(源代码)JavaScript之Date对象(源代码)JavaScript之Date对象(源代码)JavaScript之Date对象(源代码)JavaScript之Date对象(源代码)JavaScript之Date对象(源代码)JavaScript之Date对象...
JavaScript之Math对象(源代码)JavaScript之Math对象(源代码)JavaScript之Math对象(源代码)JavaScript之Math对象(源代码)JavaScript之Math对象(源代码)JavaScript之Math对象(源代码)JavaScript之Math对象...
这个文件可能包含了一些示例代码,用于演示上述的JavaScript对象创建、类定义和继承的实践。通过查看和运行这些代码,你可以更好地理解这些概念并应用到实际项目中。 总结来说,JavaScript对象创建涉及字面量、构造...
window对象的子级对象 示例代码JavaScript BOM操作 window对象的子级对象 示例代码JavaScript BOM操作 window对象的子级对象 示例代码JavaScript BOM操作 window对象的子级对象 示例代码JavaScript BOM操作 window...
本文将详细探讨三种主要的创建JavaScript对象的方法,并结合“源码”与“工具”的概念,来深入理解这些方式在实际开发中的应用。 一、字面量(Literal)方式 这是最简单直接的对象创建方式,通过大括号 `{}` 将属性...
JavaScript创建对象的方法主要有以下几种: 一、直接创建 直接创建是通过new Object()来创建一个新的空对象,然后逐步给这个对象添加属性和方法。例如,创建一个名为person1的对象,并添加name、gender属性,以及一...
JavaScript对象定义是编程语言中的核心概念,它在Web开发中起着至关重要的作用。JavaScript是一种基于原型的对象导向语言...通过持续学习和实践,开发者可以充分利用JavaScript的面向对象特性,构建复杂的Web应用程序。
"JavaScript_创建和共享源代码的美丽图像.zip"这个压缩包可能包含了一个工具或教程,用于将JavaScript源代码转化为美观的图像。这种功能在分享代码片段、教学或者在社交媒体上展示代码时非常有用,因为有时文字格式...
JavaScript学习资料JavaScript基础语法函数及相关源代码资料: BOM基础.pdf BOM基础(源代码).zip Date对象之获取和设置月份-getMonth&setMonth(教辅).pdf DOM事件总结(教辅).pdf DOM事件(ppt).pdf JavaScripr...
1. **对象创建**:JavaScript提供了多种创建对象的方法,如字面量语法`{key: value}`、构造函数(如`new Object()`)以及对象解构。此外,ES6引入了类(class)和对象初始化器(Object.create),提供更简洁的面向...
本“JavaScript学习指南”源代码包含了深入理解并掌握JavaScript编程的关键知识点。 一、基础语法 JavaScript的基础语法包括变量声明(var、let、const)、数据类型(如字符串、数字、布尔值、null、undefined、...
上述代码创建了一个名为person的对象,包含name和age属性,以及一个sayHello方法。 2. **构造函数(Constructor)方式**: JavaScript的构造函数是一种特殊的方法,用于创建和初始化对象。使用`new`关键字调用...
3. 游戏对象:代码创建了多个游戏对象,例如敌方对象(`arrXY` 数组)和我自己对象(`myObjI` 和 `myObjII`)。这些对象具有不同的属性和行为,例如敌方对象有类型、大小、颜色和速度等属性。 4. 游戏逻辑:代码...
本文将深入探讨JavaScript中创建对象的几种常见方式以及对象方法。 首先,我们来看“工厂模式”。工厂模式是一种创建对象的抽象方式,通过一个函数来返回一个新的对象。例如: ```javascript function getObj(name...
### JavaScript面向对象创建对象的方式小结 #### 一、引言 在JavaScript中,面向对象编程(OOP)是一种非常重要的编程范式。它通过创建和操作对象来组织代码,提高代码的复用性和可维护性。本文将详细介绍...
这意味着在JavaScript中,对象被视为存储数据的一种大型数组形式,其中每个对象都有一个属性列表,包含该对象的所有属性(attributes)和方法(methods)。简而言之,可以将JavaScript对象视为一个包含键值对的容器...
JavaScript面向对象编程是指在JavaScript语言中使用面向对象的方法来编写程序。JavaScript是一种高级的、解释型的编程语言,它支持面向对象的编程范式,允许开发者创建对象、使用继承和多态等面向对象的特性。以下是...
在本篇文章中,作者详细阐述了JavaScript面向对象编程的几个关键特性,并通过代码示例展示了这些特性的具体应用。首先,我们来了解几个核心概念:类、静态成员、对象和重载。 类在面向对象编程中扮演着基础的角色,...
5. **对象与原型**:理解JavaScript中的对象创建和原型继承机制,以及如何使用构造函数和原型链来实现面向对象编程。 6. **DOM操作**:学习如何通过JavaScript与HTML元素交互,添加、删除和修改DOM节点,以及监听和...