js原生之一个面向对象的应用
function IElectricalEquipment() {
}
IElectricalEquipment.prototype = {
poweron: function () {
},
poweroff: function () {
}
};
function Fan(){//电风扇
}
Fan.prototype=new IElectricalEquipment;
Fan.prototype.poweron=function(){
console.log("Fan'power on")
};
Fan.prototype.poweroff=function(){
console.log("Fan'power off")
};
function Light(){//电灯
}
Light.prototype=new IElectricalEquipment;
Light.prototype.poweron=function(){
console.log("Light'power on")
};
Light.prototype.poweroff=function(){
console.log("Light'power off")
};
var createSwitch=(function () {
function Switch(){
this.equipment=null;
}
Switch.prototype={
on:function(){
this.equipment.poweron();
},
off:function(){
this.equipment.poweroff();
}
};
return function(){
return new Switch();
}
}());
var myLight=new Light();
var myFan=new Fan();
var FanSwitch=createSwitch();
FanSwitch.equipment=myFan;
FanSwitch.on();
FanSwitch.off();
FanSwitch.equipment=myLight;
FanSwitch.on();
FanSwitch.off();
js原生之一个面向对象的应用的更多相关文章
- js原生实现轮播图效果(面向对象编程)
面向对象编程js原生实现轮播图效果 1.先看效果图 2.需要实现的功能: 自动轮播 点击左右箭头按钮无缝轮播 点击数字按钮切换图片 分析:如何实现无缝轮播? 在一个固定大小的相框里有一个ul标签,其长 ...
- 15、js 原生基础总结
Day1 一.什么是JS? ==基于对象==和==事件驱动==的客户端脚本语言 二.哪一年?哪个公司?谁?第一个名字是什么? 1995,NetScape(网景公司),布兰登(Brendan Eic ...
- js原生代码实现轮播图案例
一.轮播图是现在网站网页上最常见的效果之一,对于轮播图的功能,要求不同,效果也不同! 我们见过很多通过不同的方式,实现这一效果,但是有很多比较麻烦,而且不容易理解,兼容性也不好. 在这里分享一下,用j ...
- JS原生效果瀑布流布局的实现(一)
JS原生效果 实现: HTML页面布局: <!DOCTYPE html> <html> <head> <meta charset="utf-8&qu ...
- 工作当中实际运用(3)——js原生实现鼠标点击弹出div层 在点击隐藏
function onmou(){ var divs=document.getElementById('kefuDV');//获取到你要操作的div if (divs.style.display==& ...
- 仿jQuery的siblings效果的js原生代码
仿jQuery的siblings效果的js原生代码 <previousSibling> 属性返回选定节点的上一个同级节点(在相同树层级中的前一个节点). <nextSibling&g ...
- js原生的url操作函数,及使用方法。(附:下边还有jquery对url里的中文解码函数)
js原生的url操作函数,完善的. /*****************************/ /* 动态修改url */ /*****************************/ var ...
- 图片轮播(左右切换)--JS原生和jQuery实现
图片轮播(左右切换)--js原生和jquery实现 左右切换的做法基本步骤跟 上一篇文章 淡入淡出 类似,只不过修改了一些特定的部分 (1)首先是页面的结构部分 对于我这种左右切换式 1.首先是个外 ...
- 图片轮播(淡入淡出)--JS原生和jQuery实现
图片轮播(淡入淡出)--js原生和jquery实现 图片轮播有很多种方式,这里采用其中的 淡入淡出形式 js原生和jQuery都可以实现,jquery因为封装了很多用法,所以用起来就简单许多,转换成j ...
随机推荐
- Android之TextView控件的学习
<TextView android:id="@+id/tv" //id号,指明这个TextView的唯一身份 android:autoLink=&qu ...
- vi 编辑器跳转到指定行数
如:跳转到25行 :set number :23
- javactript关闭窗体,刷新父窗体
//关闭,父窗口弹出对话框,子窗口直接关闭this.Response.Write("<script language=javascript>window.close();< ...
- 拓扑排序的经典题目 UVA1572
紫书172的例题: 题目大意:有n种正放形,每种正方形的数量可视为无限多.已知边与边之间的结合规则,而且正方形可以任意旋转和反转,问这n中正方形是否可以拼成无限大的图案 思路:首先因为是要无穷大,所以 ...
- web beacon
网络臭虫又叫 网络信标(Web beacon), 是可以暗藏在任何网页元素或邮件内的1像素大小的透明GIF或PNG图片 可以理解为<img src="http://www.webbea ...
- Win8/8.1 下映像管理和恢复环境的配置
以前遇过不少次这种问题了,抽空记下来...... 介绍两个东西: 1. dism 部署映像服务和管理工具 主要用途是枚举.安装.卸载.配置和更新 Windows 映像中的功能和程序包. 简单地说就是有 ...
- jquery.elevateZoom实现仿淘宝看图片,一张小的,一张大用于鼠标经过时候显示
实现这个效果你需要准备两张图片,一张小的,一张大用于鼠标经过时候显示.然后我们只要为img标签添加data-zoom-image属性,其值为大图的地址,最后在javascript中选择该图片调用ele ...
- Android编程中的5种数据存储方式
Android编程中的5种数据存储方式 作者:牛奶.不加糖 字体:[增加 减小] 类型:转载 时间:2015-12-03我要评论 这篇文章主要介绍了Android编程中的5种数据存储方式,结合实例形式 ...
- [Unity]蓝鸥Untiy-RPC-Sample
蓝鸥Untiy-RPC-Sample 使用UnityEngine中的NetWork创建的服务器类 LO_GameServer.cs ** 通过该工具类能够在Unity程序中快速的创建一个游戏房间服务器 ...
- function $(id){ return document.getElementById(id); }导致所有的js不能用解决办法。。。。
function $(id){ return document.getElementById(id); } document.getElementById(id) 是获得id这个元素的. 相当于定义了 ...