JS面向对象编程创建类的方式
js创建类的方式有几种,大致如下:
1,构造函数方式:
function Car(parameters) {
this.name = "objectboy";
}
var cat1 = new Car();
console.log(cat1.name);
2,Object.create()
var Cat = {
name: "大毛",
makeSound: function(){ alert("喵喵喵"); }
};
var cat1 = Object.create(Cat);
alert(cat1.name); // 大毛
cat1.makeSound(); // 喵喵喵
感觉有点复杂
3,最简单的方式
var Car = {
CreateNew: function() {
var cat = {};
cat.name = "objectboy";
cat.age = 26;
cat.makeJS = function() {
alert("我是objectboy");
};
return cat;
}
};
var cat1 = Car.CreateNew();
console.log(cat1.name);
cat1.makeJS();
个人认为第三种从理解方面来说是最好的,
继承特性:
var sl = {
CreateNew: function () {
var cat = {};
cat.sleep = function() {
alert("objectboy在睡觉");
};
return cat;
}
}; //先定义一个需要继承的类
var Car = {
CreateNew: function() {
var cat = sl.CreateNew();
cat.name = "objectboy";
cat.age = 26;
cat.makeJS = function() {
alert("我是objectboy");
};
return cat;
}
};
var cat1 = Car.CreateNew();
console.log(cat1.name);
cat1.makeJS();
cat1.sleep(); //调用继承方法
JS面向对象编程创建类的方式的更多相关文章
- js面向对象编程(第2版)——js继承多种方式
附带书籍地址: js面向对象编程(第2版)
- Js面向对象编程
Js面向对象编程 1. 什么是面向对象编程? 我也不说不清楚什么是面向对象,反正就那么回事吧. 编程有时候是一件很快乐的事,写一些小游戏,用编程的方式玩游戏等等 2. Js如何定义一个 ...
- 简单粗暴地理解js原型链–js面向对象编程
简单粗暴地理解js原型链–js面向对象编程 作者:茄果 链接:http://www.cnblogs.com/qieguo/archive/2016/05/03/5451626.html 原型链理解起来 ...
- JS面向对象编程,对象,属性,方法。
document.write('<script type="text/javascript" src="http://api.map.baidu.com/api?v ...
- 带你一分钟理解闭包--js面向对象编程
上一篇<简单粗暴地理解js原型链--js面向对象编程>没想到能攒到这么多赞,实属意外.分享是个好事情,尤其是分享自己的学习感悟.所以网上关于原型链.闭包.作用域等文章多如牛毛,很多文章写得 ...
- js原生设计模式——3简单工厂模式\js面向对象编程实例
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...
- JS面向对象编程(进阶理解)
JS 面向对象编程 如何创建JS对象 JSON语法声明对象(直接量声明对象) var obj = {}; 使用 Object 创建对象 var obj = new Object(); JS对象可以后期 ...
- 页面循环绑定(变量污染问题),js面向对象编程(对象属性增删改查),js字符串操作,js数组操作
页面循环绑定(变量污染问题) var lis = document.querySelectorAll(".ul li") for ( var i = 0 ; i < lis. ...
- js面向对象编程 ---- 系列教程
原 js面向对象编程:数据的缓存 原 js面向对象编程:如何检测对象类型 原 js面向对象编程:if中可以使用那些作为判断条件呢? 原 js面向对象编程:this到底代表什么?第二篇 原 js面向对象 ...
随机推荐
- 【Android Api 翻译4】android api 完整翻译之Contacts Provider (学习安卓必知的api,中英文对照)
Contacts Provider 电话簿(注:联系人,联络人.通信录)提供者 ------------------------------- QUICKVIEW 快速概览 * Android's r ...
- C如何使用内存
栈: 自动变量:auto.变量的地址在栈中. C语言函数调用的实现: 在调用方,参数从后往前按顺序被堆积在栈中 和函数调用关联的返回信息(返回地址等)也被堆积在栈中. 一旦函数调用结束,局部变 ...
- Oracle 经典语法(五)
1. 哪些部门的人数比20 号部门的人数多.SELECT DEPTNO,COUNT(*) FROM EMP GROUP BY DEPTNO HAVING COUNT(*) > ...
- vb6.0如何让窗体跟随鼠标运动
首先将form的boderstyle属性设为0 Dim movesScreen As Boolean Dim mousX As Integer Dim mousY As Integer Dim cur ...
- Amazon全场满$35减$5 (需Facebook)
在Amazon.com上建一个Wish List(创建Wish List后须点击“Manage your lists”,在“Privacy”那一栏选择“Public”或“Shared”,再回到这个链接 ...
- IIs站点的建立
控制面板——管理工具——Internet信息服务管理器 首先应设置的文件权限:System 和 admin 程序池:4.0 编辑权限:iis apppool\名称 身份验证:匿名身份——应用程序池标识
- codeforces 680A A. Bear and Five Cards(水题)
题目链接: A. Bear and Five Cards //#include <bits/stdc++.h> #include <vector> #include <i ...
- Matlab之画图
1.设置对数坐标 set(gca,'XScale','log','YScale','log'); 2.加网格 grid on; 3.加log对齐网格 set(gca,'XScale','log','Y ...
- Java程序修改文件名
package script; import java.io.File; import java.io.IOException; public class Realname { public stat ...
- .NET DLL 保护措施应用实例(百度云批量保存工具)
最近做了个小工具,将保护措施思路全部应用到了此工具中. 点我下载 百度云批量保存工具是一款专门用于自动批量保存百度云分享的软件. 本软件特点:1:完全模拟人工操作:2:可以批量保存百度分享的文件( ...