`
dexter_leslie
  • 浏览: 65025 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论
  • marrymyy: 楼主总结的很好,学习了,就是代码怎么都没有空格断开,看着很不爽 ...
    interceptor

js面向对象基础续

阅读更多

实例一,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面向对象开发实践(续)

    在Ext JS中,面向对象开发是构建复杂Web应用程序的关键技术之一。在《Ext面向对象开发实践》的后续部分,我们将深入探讨如何实现数据表的CRUD(Create, Read, Update, Delete)操作,确保用户在刷新页面后仍能保留...

    asp.net程序设计基础教程

    这两种语言都是.NET Framework的一部分,它们具有相似的语法结构,但C#通常被认为是更现代和面向对象的语言。 3. **.NET Framework**:ASP.NET建立在.NET Framework之上,这是一个跨平台的开发环境,包含了类库、...

    python基础教程20161218.ppt

    Python是一种高级、面向对象的编程语言,以其优雅和健壮性著称。它注重实际问题的解决方案,使得学习和使用Python变得简单。Python的特点包括高级语法、面向对象特性、跨平台性、可扩展性、可嵌入性、强健性、解释...

    ajaxFileUpload.js

    **AjaxFileUpload.js** 是一个JavaScript库,专为在网页上实现异步文件上传而设计。这个库利用了Ajax技术,使得用户可以在不刷新整个页面的情况下上传文件,提供了更好的用户体验。AjaxFileUpload.js通常与jQuery库...

    Humans_Emotions_Codes-:函数,对象和类(续... 2)和“继承”

    在编程世界中,JavaScript 是一种广泛使用的脚本语言,尤其在网络开发中占据核心...在实际项目中,理解并熟练运用这些知识点至关重要,它们构成了JavaScript面向对象编程的基础,并帮助开发者实现代码的复用和扩展。

    VC++从零到知道(续2)

    MFC提供了一套面向对象的类,简化了COM编程。我们需要创建一个继承自CWnd或COleControl的类,并定义所需的成员函数和属性。 3. **设计时支持**:ActiveX控件可以在Visual Studio的设计环境中进行可视化设计。开发者...

    C#课程设计 房屋出租管理系统 源码

    C#作为微软开发的一款面向对象的编程语言,因其强大而易用的特性,在软件开发领域广泛应用。本篇文章将围绕“C#课程设计——房屋出租管理系统”这一主题,深入解析该系统的源码,帮助读者理解其背后的编程思想和技术...

    JAVA教程下载

    "Java开发全面通"提供了一个全面了解Java开发的视角,包括教程、实例和资源,这通常意味着它将涵盖从基本语法、面向对象编程、异常处理到集合框架、IO流、多线程等全面内容。 "JAVA视频教程_J2SE_5.0"特别强调了...

    FTP_node实现FTP_spirita5u_socketftp_c#ftp客户端_c_

    4. **C# FTP客户端**: C#是Microsoft开发的一种面向对象的编程语言,它拥有丰富的类库支持,包括用于FTP的`System.Net.FtpWebRequest`和`System.Net.FtpWebResponse`等类。开发者可以使用这些类来构建FTP客户端应用...

    c#运费模版源码.zip

    3. **C#编程**:源码的编写采用了C#语言,因此理解C#的基础语法和面向对象编程概念是必不可少的。可能涉及到的知识点包括类、对象、接口、继承、多态等。 4. **NopCommerce框架**:作为NopCommerce的插件,源码需要...

    C#实现即时通讯功能(包含客户端与服务端

    C#作为Microsoft开发的一种面向对象的编程语言,提供了丰富的库和框架来构建这样的系统。本项目"使用C#实现即时通讯功能"涵盖了客户端和服务端的开发,旨在创建一个类似QQ的功能齐全的通讯平台。 首先,客户端部分...

    2021-2022计算机二级等级考试试题及答案No.11182.docx

    39. 在面向对象设计中,对象是类的实例,对象之间通过______进行通信。A.继承B.封装C.消息D.多态正确答案: C 40. JavaScript 中,用于在控制台打印信息的函数是______。A.alert()B.log()C.print()D.write()正确...

    B站哔哩哔哩的技术架构介绍

    2. **ECMAScript 5, ES6, jQuery**:JavaScript的高级特性,面向对象编程(OOP)和闭包等。 3. **Node.js + 数据库(MongoDB/MySQL)**:用于服务端编程,处理数据存储。 4. **Vue, React, Angular**:至少熟悉其中...

    基于PHP的Ludou文件下载工具php版源码.zip

    PHP支持面向过程和面向对象的编程方式。 2. **HTTP协议**:文件下载涉及到HTTP协议,理解HTTP的GET和POST请求,以及可能的头部信息(如Content-Disposition,用于设置文件名)是必要的。 3. **文件流处理**:在PHP...

    Java教育课程管理系统源码.zip

    Java是一种跨平台的面向对象的编程语言,具有“一次编写,到处运行”的特性。它的稳定性和安全性使其成为开发企业级应用的首选。在这个课程管理系统中,Java可能被用来编写服务器端代码,处理HTTP请求,与数据库...

    python入门到高级全栈工程师培训 第3期 附课件代码

    05 面向对象概念总结 06 反射 07 反射及动态导入模块 08 类的内置attr属性 09 类内置attr属性补充 10 继承的方式完成包装 11 组合的方式完成授权 第27章 01 os模块复习 02 上节课复习 03 内置函数补充及...

    代码生成器Mgicode生成器JAVA代码生成器

    软件是用来对世界进行描述的一种方式,最初我们采用过程的编程,后来与世界的描述不相符,所以就出现了面向对象,而现在面向对象并不能很好地解析如抽象类,Service类等。要解释这些东西,最好的方式是通过关系来...

    采用asp.net+ajax技术实现的带进度条上传用户控件源码

    C#是一种面向对象的编程语言,提供了丰富的特性和语法,使得编写高效、可靠的代码变得更加容易。 AJAX(Asynchronous JavaScript and XML)并非一种单一的技术,而是一种利用JavaScript进行异步数据交换和页面更新...

    基于PHP的disk 网盘源码MiniUTF-8.zip

    1. 熟练掌握PHP编程,包括基本语法、面向对象编程和异常处理。 2. 熟悉MySQL或其他关系型数据库的使用和优化。 3. 理解HTTP协议和Web服务器配置,如Apache或Nginx。 4. 掌握前端开发基础,如HTML、CSS和JavaScript。...

Global site tag (gtag.js) - Google Analytics