• onload 初始化 类似 构造函数初始化对象
  • 全局变量  ->  属性
  • 函数  ->  方法
  • 面向对象中最重要的就是 this的理解  this报错的原因  定时器的使用
function Aaa()
{
var _this=this;
this.a=1; //使用定时器 其中的this 指向window
setInterval(function (){ _this.show();
}, 1000);
} Aaa.prototype.show=function ()
{
//如果不定义_this,那么this.a调用的就是 window
alert(this.a);
}; window.onload=function ()
{
new Aaa();
};
  • Json方式 的面向对象
//相对简单 如果需要多个对象就不行了   比如 多点登录
var obj={a: 12, b: 5, c: function (){
alert(this.a);
}}; obj.c(); var p1={
name: 'blue',
sex: '男',
showName: function ()
{
alert('我的名字是:'+this.name);
},
showSex: function ()
{
alert('我的性别是'+this.sex+'的');
}
}; p1.showSex();

JS本身是没有继承标准的  js也没有提供标准  所谓的继承就是 具备父级的属性和方法  开发者根据需要  实现自己需求  用了各种方法

 <?php
// PHP中的继承
class Person
{
function __construct($name, $sex)
{
$this->name=$name;
$this->sex=$sex;
} function showName()
{
echo $this->name;
} function showSex()
{
echo $this->sex;
}
} class Worker extends Person
{
function __construct($name, $sex, $job)
{
parent::__construct($name, $sex); $this->job=$job;
} function showJob()
{
echo $this->job;
}
} $w1=new Worker('blue', '男', '打杂的'); $w1->showName();
$w1->showJob();
?>
//js中的 一种继承写法
function Person(name, sex)
{
this.name=name;
this.sex=sex;
} Person.prototype.showName=function ()
{
alert(this.name);
}; Person.prototype.showSex=function ()
{
alert(this.sex);
}; //------------------------------------- function Worker(name, sex, job)
{
//this->new出来的Worker对象
//构造函数伪装 调用父级的构造函数——为了继承属性
Person.call(this, name, sex); this.job=job;
} //原型链 通过原型来继承父级的方法 这种赋值会影响Person的方法 不推荐使用
//Worker.prototype=Person.prototype;

//循环赋值
for(var i in Person.prototype)
{
Worker.prototype[i]=Person.prototype[i];
} Worker.prototype.showJob=function ()
{
alert(this.job);
}; var oP=new Person('blue', '男');
var oW=new Worker('blue', '男', 'php'); oP.showName();
oP.showSex(); oW.showName();
oW.showSex();
oW.showJob();

JS-面向对象相关的更多相关文章

  1. JS面向对象(3) -- Object类,静态属性,闭包,私有属性, call和apply的使用,继承的三种实现方法

    相关链接: JS面向对象(1) -- 简介,入门,系统常用类,自定义类,constructor,typeof,instanceof,对象在内存中的表现形式 JS面向对象(2) -- this的使用,对 ...

  2. JS面向对象(2) -- this的使用,对象之间的赋值,for...in语句,delete使用,成员方法,json对象的使用,prototype的使用,原型继承与原型链

    相关链接: JS面向对象(1) -- 简介,入门,系统常用类,自定义类,constructor,typeof,instanceof,对象在内存中的表现形式 JS面向对象(2) -- this的使用,对 ...

  3. JS面向对象(1) -- 简介,入门,系统常用类,自定义类,constructor,typeof,instanceof,对象在内存中的表现形式

    相关链接: JS面向对象(1) -- 简介,入门,系统常用类,自定义类,constructor,typeof,instanceof,对象在内存中的表现形式 JS面向对象(2) -- this的使用,对 ...

  4. 拖拽系列二、利用JS面向对象OOP思想实现拖拽封装

    接着上一篇拖拽系列一.JavaScript实现简单的拖拽效果这一篇博客将接着对上一节实现代码利用JS面向对象(OOP)思维对上一节代码进行封装; 使其模块化.避免全局函数污染.方便后期维护和调用:写到 ...

  5. JS面向对象笔记二

    菜单导航,<JS面向对象笔记一>,  参考书籍:阮一峰之<JavaScript标准参考教程> 一.构造函数和new命令 二.this关键字 三.构造函数和new命令 四.构造函 ...

  6. js面向对象设计之class继承

    EcmaScript 2015 (又称ES6)通过一些新的关键字,使类成为了JS中一个新的一等公民.但是目前为止,这些关于类的新关键字仅仅是建立在旧的原型系统上的语法糖,所以它们并没有带来任何的新特性 ...

  7. js面向对象设计之function类

    本文仅探讨如何合理的使用 function 在 javascript中实现一个面向对象设计的类.总所周知,javascript 并不能实现一个真正意义上的类,比如 protect 比如 函数重载.下面 ...

  8. ES6学习笔记(三):教你用js面向对象思维来实现 tab栏增删改查功能

    前两篇文章主要介绍了类和对象.类的继承,如果想了解更多理论请查阅<ES6学习笔记(一):轻松搞懂面向对象编程.类和对象>.<ES6学习笔记(二):教你玩转类的继承和类的对象>, ...

  9. js 面向对象 动态添加标签

    有点逻辑 上代码 thml布局 点击查看代码 <!DOCTYPE html> <html lang="en"> <head> <meta ...

  10. js面向对象学习 - 对象概念及创建对象

    原文地址:js面向对象学习笔记 一.对象概念 对象是什么?对象是“无序属性的集合,其属性可以包括基本值,对象或者函数”.也就是一组名值对的无序集合. 对象的特性(不可直接访问),也就是属性包含两种,数 ...

随机推荐

  1. CentOS6.5(1)----设置静态IP并禁用IPV6

    使用vim命令编辑 /etc/sysconfig/network-scripts/ifcfg-eth0 文件 vim /etc/sysconfig/network-scripts/ifcfg-eth0 ...

  2. vs的一个奇葩错误 : 未能找到任何适合于指定的区域性或非特定区域性的资源...

    摘要: VS2005下进行开发的时候遇到的问头:未能找到任何适合于指定的区域性或非特定区域性的资源.请确保在编译时已将“xxx.Form1.resources”正确嵌入或链接到程序集“xxx”,或者确 ...

  3. JS字面量创建方式的优缺点

    http://www.cnblogs.com/wuyaxing/p/6416441.html

  4. win10系统80端口被System (PID=4)占用的解决

    今天想用wamp搭建虚拟目录.发现80端口被占用,操作挺麻烦的,所以想要更改. 具体流程如下: 1.“win+R”输入“cmd”,然后输入“netstat -ano | findstr "8 ...

  5. SQLServer2008或SQLServer2008 R2没有智能提示解决方法

    如果没有智能提示,需要安装SqlcompletefreeSQL Server智能提示

  6. 音乐mp4网站 汽车服务工程 张旭

  7. 深入浅出SharePoint2010——请假系统无代码篇之数据框架设计

    文档库SOP:上传用户操作手册等系统相关文档. 员工信息列表EmployeeInfo:用来存储员工基本信息.直属领导和假卡信息. 请假申请列表LeaveRequest:申请人Requester填写请假 ...

  8. 读 CSI讲义 费马小定理

    费马小定理 最近在上计算机安全学选修课.. 读老师博客..现在当是写阅读笔记吧. 这里贴出老师的简书建议先看看链接先..毕竟我这些东西只是搞笑一下的.. 遵循一下这个原则… 观察 找规律 求证 首先是 ...

  9. 验证 Xcode是否有效方法

    苹果给出了验证 Xcode 的方法,需要用户在终端中执行下面的命令: spctl --assess --verbose /Applications/Xcode.app 如果 Xcode 从 Mac A ...

  10. 查看SQL运行时间

    set @d=now(); select * from table; select timestampdiff(second,@d,now());