实例一,call和apply用法
function Person(name,age){
this.name =name;
this.age=age;}
var o = new Object();
alert(o.name,o.age);//undefined_undefined
Person.call(o,"dexter",23);
alert(o.name,o.age);//dexter_23
Person.apply(o,["dexter1",23])//apply方法作用同call,不同之处在于参数传递的形式是用数组传递
alert(o.name+"_"+o.age);//dexter1_23
实例二
function Circle(radius){
this.radius = radius;
this.area=function(){return 3.14*this.radius*this.radius;};
}
假定我们定义了100个Circle类的实例对象,那么每个实例都有一个radius和area方法,实际上,除了radius属性,每个Circle类的实例area方法都是一样,这样我们可以把area方法抽出来定义在Circle的prototype属性中。
function Circle(radius){
this.radius=radius;
}
Circle.prototype.area=function(){return 3.14*this.radius*this.radius;}
实例三使用prototype属性模拟继承
function Circle(radius)
{
this.radius=radius;
}
Circle.prototype.area=function(){return 3.14*this.radius*this.radius;}
function PositionCircle(x,y,radius){
this.x=x;
this.y=y;
Circle.call(this,radius);//调用父类的方法,相当于调用this.Circle(radius)
}
PositionCirlce.prototype=new Circle();//设置PositionCircle的父类为Circle
var pc=new PositionCircle(1,2,1);
alert(pc.area());
PositionCircle.prototype.constructor=PositionCircle;//设置子类的constructor,否则它会指向父类
2.作用域、闭包、模拟私有属性
分享到:
相关推荐
在Ext JS中,面向对象开发是构建复杂Web应用程序的关键技术之一。在《Ext面向对象开发实践》的后续部分,我们将深入探讨如何实现数据表的CRUD(Create, Read, Update, Delete)操作,确保用户在刷新页面后仍能保留...
这两种语言都是.NET Framework的一部分,它们具有相似的语法结构,但C#通常被认为是更现代和面向对象的语言。 3. **.NET Framework**:ASP.NET建立在.NET Framework之上,这是一个跨平台的开发环境,包含了类库、...
Python是一种高级、面向对象的编程语言,以其优雅和健壮性著称。它注重实际问题的解决方案,使得学习和使用Python变得简单。Python的特点包括高级语法、面向对象特性、跨平台性、可扩展性、可嵌入性、强健性、解释...
**AjaxFileUpload.js** 是一个JavaScript库,专为在网页上实现异步文件上传而设计。这个库利用了Ajax技术,使得用户可以在不刷新整个页面的情况下上传文件,提供了更好的用户体验。AjaxFileUpload.js通常与jQuery库...
在编程世界中,JavaScript 是一种广泛使用的脚本语言,尤其在网络开发中占据核心...在实际项目中,理解并熟练运用这些知识点至关重要,它们构成了JavaScript面向对象编程的基础,并帮助开发者实现代码的复用和扩展。
MFC提供了一套面向对象的类,简化了COM编程。我们需要创建一个继承自CWnd或COleControl的类,并定义所需的成员函数和属性。 3. **设计时支持**:ActiveX控件可以在Visual Studio的设计环境中进行可视化设计。开发者...
C#作为微软开发的一款面向对象的编程语言,因其强大而易用的特性,在软件开发领域广泛应用。本篇文章将围绕“C#课程设计——房屋出租管理系统”这一主题,深入解析该系统的源码,帮助读者理解其背后的编程思想和技术...
"Java开发全面通"提供了一个全面了解Java开发的视角,包括教程、实例和资源,这通常意味着它将涵盖从基本语法、面向对象编程、异常处理到集合框架、IO流、多线程等全面内容。 "JAVA视频教程_J2SE_5.0"特别强调了...
4. **C# FTP客户端**: C#是Microsoft开发的一种面向对象的编程语言,它拥有丰富的类库支持,包括用于FTP的`System.Net.FtpWebRequest`和`System.Net.FtpWebResponse`等类。开发者可以使用这些类来构建FTP客户端应用...
3. **C#编程**:源码的编写采用了C#语言,因此理解C#的基础语法和面向对象编程概念是必不可少的。可能涉及到的知识点包括类、对象、接口、继承、多态等。 4. **NopCommerce框架**:作为NopCommerce的插件,源码需要...
C#作为Microsoft开发的一种面向对象的编程语言,提供了丰富的库和框架来构建这样的系统。本项目"使用C#实现即时通讯功能"涵盖了客户端和服务端的开发,旨在创建一个类似QQ的功能齐全的通讯平台。 首先,客户端部分...
39. 在面向对象设计中,对象是类的实例,对象之间通过______进行通信。A.继承B.封装C.消息D.多态正确答案: C 40. JavaScript 中,用于在控制台打印信息的函数是______。A.alert()B.log()C.print()D.write()正确...
2. **ECMAScript 5, ES6, jQuery**:JavaScript的高级特性,面向对象编程(OOP)和闭包等。 3. **Node.js + 数据库(MongoDB/MySQL)**:用于服务端编程,处理数据存储。 4. **Vue, React, Angular**:至少熟悉其中...
PHP支持面向过程和面向对象的编程方式。 2. **HTTP协议**:文件下载涉及到HTTP协议,理解HTTP的GET和POST请求,以及可能的头部信息(如Content-Disposition,用于设置文件名)是必要的。 3. **文件流处理**:在PHP...
Java是一种跨平台的面向对象的编程语言,具有“一次编写,到处运行”的特性。它的稳定性和安全性使其成为开发企业级应用的首选。在这个课程管理系统中,Java可能被用来编写服务器端代码,处理HTTP请求,与数据库...
05 面向对象概念总结 06 反射 07 反射及动态导入模块 08 类的内置attr属性 09 类内置attr属性补充 10 继承的方式完成包装 11 组合的方式完成授权 第27章 01 os模块复习 02 上节课复习 03 内置函数补充及...
软件是用来对世界进行描述的一种方式,最初我们采用过程的编程,后来与世界的描述不相符,所以就出现了面向对象,而现在面向对象并不能很好地解析如抽象类,Service类等。要解释这些东西,最好的方式是通过关系来...
C#是一种面向对象的编程语言,提供了丰富的特性和语法,使得编写高效、可靠的代码变得更加容易。 AJAX(Asynchronous JavaScript and XML)并非一种单一的技术,而是一种利用JavaScript进行异步数据交换和页面更新...
1. 熟练掌握PHP编程,包括基本语法、面向对象编程和异常处理。 2. 熟悉MySQL或其他关系型数据库的使用和优化。 3. 理解HTTP协议和Web服务器配置,如Apache或Nginx。 4. 掌握前端开发基础,如HTML、CSS和JavaScript。...