Javascript 面向对象编程定义接口的一种方法
- //定义一个接口函数
- var Interface = function(interfaceName,interfaceMethods){
- if(arguments.length!=2){
- alert("Interface expected 2 arguments,one is for Interface Name, and the other is the Array for methods ")
- }
- this.interfaceName = interfaceName;
- this.interfaceMethods = new Array();
- for(var i = 0;i < interfaceMethods.length;i++){
- if(typeof interfaceMethods[i] !== "string"){
- alert("Interface constructor expects each method name to be passed in as a string");
- break;
- }
- this.interfaceMethods.push(interfaceMethods[i])
- }
- }
- //检查对象实现接口函数的情况,可以实现多继承,第二个参数为对象数组
- Interface.CheckImplements = function(object,interfaces){
- if(arguments.length!=2){
- alert("Interface expected 2 arguments,one is for Interface Name, and the other is the Array for methods ")
- }
- for(var i=0;i,i<interfaces.length;i++){
- //alert(interfaces[i])
- if(interfaces[i].constructor !== Interface){
- alert("the interface expects to be created from Interface")
- break;
- }
- var interface = interfaces[i];
- for(var j=0;j<interface.interfaceMethods.length;j++){
- method = interface.interfaceMethods[j];
- if(!object[method]||(typeof object[method]!="function")){
- alert("object for the method '"+method+ " ' is not found for Interface '"+ interface.interfaceName+ " '")
- break;
- }
- }
- }
- }
转载于:https://www.cnblogs.com/ryan1990/p/4205464.html
Javascript 面向对象编程定义接口的一种方法相关推荐
- JavaScript面向对象编程(2)-- 类的定义
javascript面向对象编程(2)-- 类的定义 2008-05-29 11:05 by johnson2008, 6196 visits, 收藏, 编辑 最近这一段时间事情太多了,没有时间再继续 ...
- javascript面向对象编程实现[定义(静态)属性方法--继承]
javascript面向对象编程实现: 1.类的声明: function test1(){ this.p ...
- 《javascript面向对象编程指南》读书笔记
<javascript面向对象编程指南>读书笔记 <javascript面向对象编程指南>读书笔记 第一章 面向对象的JavaScript 第二章 基本数据类型与流程控制 变量 ...
- JavaScript 面向对象编程思想
JavaScript 面向对象编程思想 什么是面向对象 面向对象不是新的东西,它只是过程式代码的一种高度封装,目的在于提高代码的开发效率和可维护性. 面向对象编程 -- Object Oriented ...
- 浅谈JavaScript 面向对象编程[转]
这周心血来潮,翻看了现在比较流行的几个 JS 脚本框架的底层代码,虽然是走马观花,但也受益良多,感叹先人们的伟大-- 感叹是为了缓解严肃的气氛并引出今天要讲的话题,"javascript 面 ...
- JavaScript 面向对象编程(三) —— 函数进阶 / 严格模式 / 高阶函数 / 闭包 / 浅拷贝和深拷贝
本篇为 JavaScript 进阶 ES6 系列笔记第三篇,将陆续更新后续内容.参考:JavaScript 进阶面向对象 ES6 :ECMAScript 6 入门 系列笔记: JavaScript 面 ...
- JavaScript 面向对象编程(二) —— 构造函数 / 原型 / 继承 / ES5 新增方法
本篇为 JavaScript 进阶 ES6 系列笔记第二篇,将陆续更新后续内容.参考:JavaScript 进阶面向对象 ES6 :ECMAScript 6 入门 : Javascript 继承机制的 ...
- JS(四)--JavaScript 面向对象编程
JavaScript 面向对象编程 一.JavaScript 面向对象编程 1.1..什么是面向对象编程 1.2.面向过程和面向对象的对比 1.3.JavaScript 中的对象? 1.3.1.属性和 ...
- Javascript 面向对象编程(一):封装 ——转自阮一峰博客
Javascript 面向对象编程(一):封装 作者: 阮一峰 日期: 2010年5月17日 学习Javascript,最难的地方是什么? 我觉得,Object(对象)最难.因为Javascript的 ...
最新文章
- 所谓移动IP是指(58);实现移动IP的关键技术是(59)。【答案】D B
- eip协议通信_3月免费公开课伺服、通信等课程重磅发布,火热报名中
- 2022图神经网络5篇最新的研究综述:双曲/图分类/联邦/等变/异质性
- AI技术的天花板:图灵机无法建立“自我”意识的概念
- 回车键兼容多个浏览器
- Ubuntu 创建文件快捷方式 启动器
- 『HTML5制造仿JQuery作用』减速
- mysql 杀存储过程进程_SQL SERVER 杀死锁进程存储过程
- 01-H5语义化标签
- 全球知名大学课件下载地址汇总
- 这样查看告警邮件要慢一点……
- 解决虚拟机克隆后eth0不见的问题
- 使用cordova,使html5也能像IOS,Android那样可以 调取手机的相机拍照功能
- 【代码优化】注解优先命名模式
- 谷歌卫星地图下载助手
- AIDA64 Business Edition(系统检测)多国语言绿色特别
- 找特征点的算法 SIFT和SURF算法
- 薛定谔的猫、量子纠缠、和量子计算机
- CentOS 系统查询开机启动项服务
- 化云为雨,华为云为什么要深入经济的“毛细血管”?
热门文章
- 主板rs232接口测试软件,简洁的RS232串口通信电路与串口通信测试程序
- oracle数据库的性能测试工具有哪些,使用Oracle性能测试工具swingbench测试instance caging...
- linux neo4j 服务器,如何在linux服务器上配置Neo4j · Digital World
- cnc加工中心保养表_CNC加工中心有哪些日常保养方法?
- 在计算机领域做研究的一些想法-- 转载
- [BZOJ 1012] 最大数maxnumber
- 2020-07-07 CVPR2020 i3DV论文讨论(3) 笔记
- CVPR 2017 SANet:《SANet: Structure-Aware Network for Visual Tracking》论文笔记
- CVPR 2018 目标跟踪相关论文
- HDOJ 4699-Editor[栈]