在学习过程中我们需要用到js的面向对象的编程,所以需要从头学起,整理一些js中面向对象的资料
Javascript是一种基于对象(object-based)的语言,你遇到的所有东西几乎都是对象。但是,它又不是一种真正的面向对象编程(OOP)语言,因为它的语法中没有class(类)。那么,如果我们要把"属性"(property)和"方法"(method),封装成一个对象,甚至要从原型对象生成一个实例对象,记录以下一些方法:
一、直接定义
我们把猫看成一个对象,他有名字和年龄两个属性
var Cat = { name = ''; color = '' ; }
下面生成两个对象
var cat1 = {}; // 创建一个空对象 cat1.name = "大毛"; // 按照原型对象的属性赋值 cat1.coler = '黄色'; var cat2 = {}; cat2.name = "二毛"; cat2.color = '红色';
二、构造函数模式
为了解决从原型对象生成实例的问题,js提供了一个构造函数(constructor)模式。所谓构造函数就是一个普通函数,但是内部使用this,对构造符使用new运算符,就能生成实例,并且this变量会绑定在实例对象上。
那么猫的原型对象就可以写成:
function Cat(name,color){ this.name=name; this.color=color; }
猫的实例对象就是
var cat1 = new Cat("大毛","黄色"); var cat2 = new Cat("二毛","黑色"); alert(cat1.name); // 大毛 alert(cat1.color); // 黄色
三、Prototype模式
js中规定每个构造函数都有一个prototype属性,只想另一个对象。这个对象的所有属性和方法,都会被狗仔函数的实例继承这意味着,我们可以把那些不变的属性和方法直接定义在prototype对象上。
猫的原型对象就可以这样
function Cat(name,color){ this.name = name; this.color = color; } Cat.prototype.type = "猫科动物"; Cat.prototype.eat = function(){alert("吃老鼠")};
生成实例
var cat1 = new Cat("大毛","黄色"); var cat2 = new Cat("二毛","黑色"); alert(cat1.type); // 猫科动物 cat1.eat(); // 吃老鼠
这个路程真的是路漫漫其修远兮啊,以后的还要抓紧好好掌握并熟练应用吧。。。
相关推荐
《JavaScript面向对象编程指南》内容包括:JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在JavaScript中的运用;数据类型、操作符以及流程控制语句;函数、闭包、对象和原型等概念,以代码...
JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在... 《JavaScript面向对象编程指南》着重介绍JavaScript在面向对象方面的特性,展示如何构建强健的、可维护的、功能强大的应用程序及程序库
面向对象编程的基础知识及其在JavaScript中的运用;数据类型、操作符以及流程控制语句;函数、闭包、对象和原型等概念,以代码重用为目的的继承模式;BOM、DOM、浏览器事件、AJAX和JSON;如何实现JavaScript中缺失的...
文档中初步讲解javascript面向对象编程思想,example.html是JavaScript面向对象编程思想案例,层层深入,希望给广大同胞一些帮助。
JavaScript面向对象编程,用面向对象的思想来编写JS
《JavaScript面向对象编程指南》内容包括:JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在JavaScript中的运用;数据类型、操作符以及流程控制语句;函数、闭包、对象和原型等概念,以代码...
《JavaScript面向对象编程指南》内容包括:JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在JavaScript中的运用;数据类型、操作符以及流程控制语句;函数、闭包、对象和原型等概念,以代码...
要求: 用javascript封装一个类,实现动态构造导航菜单功能,数据格式为data.xml 要求: 1.运用面向对象的思想设计该类(如继承)。 2.实现效果参考 "示例.bmp",菜单样式整洁即可。 3.两天内完成。
从零开始,甚至不需要你懂JS:先是基础JS知识,然后再讲OOP思想。
面向过程(Procedure Oriented)也可称之为“面向记录”,是一种以过程为中心的编程思想。它注重的是具体的步骤,只有按照步骤一步一步执行,才能够完成某件事情。 面向对象(Object Oriented,OO),注重的是一个个...
传统方式对JavaScript的应用基本上是基于过程模型的,若在JavaScript中利用面向对象的思想进行代码编写,将会使得代码具有良好的结构和逻辑性,更便于管理和...本文让读者看到JavaScript如何实现面向对象编程并提供范例
1 面向对象编程思想在程序项目中有着非常明显的优势: 1- 1 代码可读性高.由于继承的存在,即使改变需求,那么维护也只是在局部模块 1-2 维护非常方便并且成本较低。 2 这个demo是采用了面向对象的编程思想. 用...
尤其适合那些对javascript一知半解的 能让你上个档次 javascript是比面向对象语言还要高级的语言