javascript面向对象基本用法

<!doctype html>

<html>

<head>

<meta charset="utf-8">

<title>无标题文档</title>

</head>

<script type="text/jscript">

//js面向对象:创建一个猫类

function Cat(){

}

//js对象的属性可以动态的添加

var cat1=new Cat();

cat1.name="tom";

cat1.age=3;

cat1.color="白色";

document.write(cat1.name+"--"+cat1.age+"--"+cat1.color);

//js中自定义类(原型对象)的方法

document.write("<br/>1.工厂方法");

var obj=new Object();

obj.name="aa";

obj.show=function(){

}

document.write("<br/>2.构造函数来定义类");

function Person(){

}

document.write("<br/>js中一切都是对象");

var i=10;

document.write("<br/>"+i.constructor);

function Person1(){

}

var p1=new Person1();

document.write("<br/>"+p1.constructor);

document.write("<br/>"+Person1.constructor);

document.write("<br/>"+Function.constructor);

document.write("<br/>instanceof 判断对象实例是不是某个类的对象实例");

if(p1 instanceof Person1){

document.write("<br/>p1是Person1的对象实例");

}else{

document.write("<br/>p1不是Person1的对象实例");

}

document.write("<br/>js销毁对象属性的方法:delete 对象名.属性");

document.write("<br/>给对象创建就有的属性");

function Person2(name){

this.name=name;

}

var p2=new Person2("Tom");

document.write("<br/>"+p2.name);

document.write("<br/>内部函数访问私有变量");

function Person3(){

//两个私有变量

var name="China";

var age=10000;

this.show=function(){

document.write("<br/>"+name+"--"+age);

}

}

var p3=new Person3();

p3.show();

document.write("<br/>js面向对象的成员函数");

function Person4(name,age){

this.name=name;

this.age=age;

}

function speak(){

document.write("<br/>我是:"+this.name+";年龄:"+this.age);

}

var p4=new Person4("小白",30);

p4.fun1=speak;

p4.fun1();

speak();

/*第二种写法

p4.fun1()=function speak(){}

*/

document.write("<br/>定义公共函数");

function Test1(){

this.test=function(){

document.write("<br/>公共函数");

}

}

//这里是匿名写法

new Test1().test();

document.write("<br/>js的原型法");

Dog.prototype.shout=function (){

document.write("小狗叫");,

}

var dog1=new Dog();

dog1.shout();

</script>

<body>

</body>

</html>

QQ:1327880701,一起学习进步,交朋友。

版权声明:博主原创文章,转载请说明出处。http://blog.csdn.net/dzy21

时间: 2024-10-05 08:58:43

javascript面向对象基本用法的相关文章

再谈javascript面向对象编程

前言:虽有陈皓<Javascript 面向对象编程>珠玉在前,但是我还是忍不住再画蛇添足的补上一篇文章,主要是因为javascript这门语言魅力.另外这篇文章是一篇入门文章,我也是才开始学习Javascript,有一点心得,才想写一篇这样文章,文章中难免有错误的地方,还请各位不吝吐槽指正 吐槽Javascript 初次接触Javascript,这门语言的确会让很多正规军感到诸多的不适,这种不适来自于Javascript的语法的简练和不严谨,这种不适也 来自Javascript这个悲催的名称,

JavaScript面向对象编程学习笔记

1  Javascript 面向对象编程 所谓"构造函数",其实就是一个普通函数,但是内部使用了this变量.对构造函数使用new运算符,就能生成实例,并且this变量会绑定在实例对象上. 自动含有一个constructor属性,指向它们的构造函数. Javascript还提供了一个instanceof运算符,验证原型对象与实例对象之间的关系. Javascript规定,每一个构造函数都有一个prototype属性,指向另一个对象.这个对象的所有属性和方法,都会被构造函数的实例继承.

JavaScript面向对象及相关知识

最近在学习JavaScript面向对象,写下自己的理解及相关资料,以备查阅. 一.面向对象中涉及的相关几个概念 1.作用域 所谓作用域,就是说属性和函数的可访问范围.在JavaScript中,作用域分为两种.全局作用域和局部作用域. 所有没有var 声明 或 定义于最外层函数和最外层函数外面即为全局作用域.也就是定义可以随意调用. 自定义函数内部用var声明的为局部作用域. var num = 1; //全局作用域 window.onload = function() { //最外层为全局作用域

javascript面向对象之this指针

下午用面向对象的方法写一个幻灯片插件的时候不小心写出了这样的代码: Slider.prototype.auto=function() { setInterval(this.toRun,4000);//注意 } Slider.prototype.toRun=function() { if(this.iNow==this.aA.length - 1) ...... } 在浏览器打开的时候发现幻灯片不能如预期般自动切换,控制台给出了这样的错误提示: this.aA isundefined?然而我已经在

javascript面向对象2

原文:javascript面向对象2 首先我们先创建一个对象 var user = Object(); user.name = "张三"; user.age = 20; user.sex = "男"; 上面呢创建了一个对象,当然创建对象的方法有很多种,但是用这样的方法创建对象比较简单直观,也是JavaScript种创建对象最基本的方法. 同时呢也出现了另外一个弊端,当我们想要创建多个对象的时候,我们就要写很多重复的代码,这样一来就增加了代码量,减少了工作的效率, 为

JavaScript面向对象之类的继承

<!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-

Javascript面向对象特性实现封装、继承、接口详细案例——进级高手篇

Javascript面向对象特性实现(封装.继承.接口) Javascript作为弱类型语言,和Java.php等服务端脚本语言相比,拥有极强的灵活性.对于小型的web需求,在编写javascript时,可以选择面向过程的方式编程,显得高效:但在实际工作中,遇到的项目需求和框架较大的情况下,选择面向对象的方式编程显得尤其重要,Javascript原生语法中没有提供表述面向对象语言特性的关键字和语法(如extends.implement).为了实现这些面向对象的特性,需要额外编写一些代码,如下.

[连载]JavaScript讲义(03)--- JavaScript面向对象编程

[连载]JavaScript讲义(03)--- JavaScript面向对象编程,布布扣,bubuko.com

Javascript面向对象编程(二):构造函数的继承

这个系列的第一部分,主要介绍了如何"封装"数据和方法,以及如何从原型对象生成实例. 今天要介绍的是,对象之间的"继承"的五种方法. 比如,现在有一个"动物"对象的构造函数. function Animal(){ this.species = "动物"; } 还有一个"猫"对象的构造函数. function Cat(name,color){ this.name = name; this.color = col