Javascript使用function创建类的两种方法(推荐)
1、使用function类
//myFunction.js var CMyFunc=function() { //类的公共方法,供外部调用 this.Func1=function() { var i=0; return i; } this.Func2=function() { _privateFunc(); } //类中的私有方法,供公共方法调用 function _privateFunc() { return 0; ] } CMyFunc myFunc=new CMyFunc();
使用:其它javascript文件引入myFunction.js后,直接使用myFunc(全局变量).Func1
2、使用function类(二)
//myFunction.js var CMyFunc=function() { var myFunc=new Object(); //类的公共方法,供外部调用 myFunc.Func1=function() { var i=0; return i; } myFunc.Func2=function() { _privateFunc(); } //类中的私有方法,供公共方法调用 function _privateFunc() { return 0; ] return myFunc; }
使用:其它javascript文件引入myFunction.js后,通过var myFunc=new CMyFunc()初始化一个对象使用
优点:1、使用myFunc对象函数时有智能提示 2、不用在myFunction.js中创建全局变量 3、myFunc对象函数中的this参数指向一致
3、使用jquery扩展
//myFunction.js (function ($) { $.MyFunc={}; $.MyFunc.Func1=function() { var i=0; return i; } $.MyFunc.Func2=function() { var i=0; return i; } })(jQuery);
使用:其它javascript文件引入myFunction.js后,直接使用$.MyFunc.Func1()即可
以上这篇Javascript使用function创建类的两种方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
JS常见创建类的方法小结【工厂方式,构造器方式,原型方式,联合方式等】
本文实例讲述了JS常见创建类的方法.分享给大家供大家参考,具体如下: Javascript是一种基于对象的语言,你遇到的所有东西几乎都是对象.但是,它又不是一种真正的面向对象编程(OOP)语言,因为它的语法中没有Class.(不过,ES6引入了Class这个概念,作为对象的模板.通过class关键字,可以定义类.ES6入门:http://es6.ruanyifeng.com/). 但是在项目开发中,经常用到JS面向对象开发,这就需要我们去用JS创建类,从而去实例化一些对象.接下来我们介绍一下在J
-
JavaScript中创建类/对象的几种方法总结
在JS中,创建对象(Create Object)并不完全是我们时常说的创建类对象,JS中的对象强调的是一种复合类型,JS中创建对象及对对象的访问是极其灵活的. JS对象是一种复合类型,它允许你通过变量名存储和访问,换一种思路,对象是一个无序的属性集合,集合中的每一项都由名称和值组成(听起来是不是很像我们常听说的HASH表.字典.健/值对?),而其中的值类型可能是内置类型(如number,string),也可能是对象. 一.由一对大括号括起来 复制代码 代码如下: var emptyObj = {
-
讨论javascript(一)工厂方式 js面象对象的定义方法
复制代码 代码如下: //60年代的汽车工厂 var ocar=new Object; ocar.color="black"; ocar.doors=2; ocar.pinpai="解放"; ocar.showPinpai=function() { alert(this.pinpai);//需要一个生产线,生产一个汽车,再生产下个汽车还需要建立新的生产线 } //70年代的汽车工厂 function createcar() { var oTempCar=new Ob
-
JavaScript创建类/对象的几种方式概述及实例
在JS中,创建对象(Create Object)并不完全是我们时常说的创建类对象,JS中的对象强调的是一种复合类型,JS中创建对象及对对象的访问是极其灵活的. JS对象是一种复合类型,它允许你通过变量名存储和访问,换一种思路,对象是一个无序的属性集合,集合中的每一项都由名称和值组成(听起来是不是很像我们常听说的HASH表.字典.健/值对?),而其中的值类型可能是内置类型(如number,string),也可能是对象. 一.由一对大括号括起来 复制代码 代码如下: var emptyObj = {
-
javascript最常用与实用的创建类的代码
复制代码 代码如下: //以构造函数方式添加私有属性和方法 function Person(name, age, address) { this.name = name; this.age = age; this.address = address; } //以原型方式添加公有属性.方法 Person.prototype = { constructor: Person, showName: function () { alert(this.name + this.age + this.addre
-
javascript工厂方式定义对象
每一个函数对象都有一个length属性,表示该函数期望接收的参数个数. 复制代码 代码如下: <html> <head> <script type="text/javascript"> var add =function(num1,num2,num3){ alert(num1+num2+num3); } alert(add.length); </script> </head> <body> </bod
-
JavaScript中使用构造器创建对象无需new的情况说明
如下 复制代码 代码如下: function Person(name, age) { this.name = name; this.age = age; } var p = new Person('lily', 20); 发现某些库代码中创建正则对象的方式无需new,这让人感到奇怪.如下 复制代码 代码如下: var reg = RegExp('^he$'); 测试发现使用或不使用new,最后返回的都是正则对象,且typeof它们都是"object". 复制代码 代码如下: var r
-
Javascript 创建类并动态添加属性及方法的简单实现
JavaScript 是一种很强的面向对象的语言,支持创建实例之后再添加属性和方法,虽然是小技巧,用的时候容易忘记,今天写了一个很小的例子,记录在这里,仅供参考. function MyClass() { //This function is same as a constructer alert("New Object Created"); } //Creating Object var MyObject = new MyClass (); NewObject.prototype =
-
JavaScript设计模式之工厂模式和构造器模式
什么是模式 前阵子准备期末考试,劳神又伤身的,实在闲不得空来更新文章,今天和大家说说javascript中的设计模式. 首先呢,我们需要知道的是:模式是一种可复用的解决方案,而反模式呢就是针对某个问题的不良解决方案. js反模式常见例子 1.向setTimeout和setInterval传递字符串,而不是函数,这会触发eval()的内部使用. 2.在全局上下文中定义大量的变量污染全局命名空间 3.修改Object类的原型 4.以内联形式使用js,嵌入在HTML文件中的js代码是无法包含在外部单元
-
JS创建类和对象的两种不同方式
在JavaScript中, 当你定义了一个新的函数, 你实际上声明了一个新的类, 而这个函数本身就相当于类的构造函数.下面的代码向你展示了两种不同的方式来创建一个新的Person类, 而Person.prototype的定义也紧跟在函数定义之后. var Person = function(name) { // 一个匿名函数, 并将这个函数赋值给一个Person变量, 此时Person成为一个类 this.name = name; } function Person(name) { // 直接定
-
利用MS AJAX注册Javascript命名空间并创建类
一.为页面添加一个ScriptManager控件. 二.注册命名空间: Type.registerNamespace("Demo"); 三.为类添加构造函数.属性.方法. Demo.sample=function(){} 四.注册类. Demo.Person.registerClass('Demo.sample ', null, Sys.IDisposable); 下面是一个具体的实例: Namespace.js Type.registerNamespace("Demo&qu
-
javascript 混合的构造函数和原型方式,动态原型方式
我们日常JS编程中最常用的方式 有下面2种: 1.混合的构造函数和原型方式 (重点) 复制代码 代码如下: function car (sColor,iNumbers){ // 构造函数只用来定义对象的所有非函数属性,即对象的属性 this.color = sColor; this.numbers = iNumbers; this.dirvers = new Array ("Jone","Leon"); } car.prototype.showColor = fun
随机推荐
- 浅谈mysql 针对单张表的备份与还原
- JavaScript trim 实现去除字符串首尾指定字符的简单方法
- 用DNSPod和Squid打造自己的CDN全程分享
- myeclipse中使用maven前常见错误及解决办法
- Java方法参数是引用调用还是值调用?
- c#与js随机数生成方法
- PHP机器学习库php-ml的简单测试和使用方法
- jquery实现手机发送验证码的倒计时代码
- Centos 6.5 下安装mysql 5.6.21的方法
- MySQL存储过程中实现执行动态SQL语句的方法
- Lua性能优化技巧(五):削减、重用和回收
- ADO.NET EF中的实体修改方法
- jQuery AnythingSlider滑动效果插件
- 我想在客户自己开主机时自选mysql或sql数据库
- jquery ready函数深入分析
- Android 实现通知消息水平播放、无限循环效果
- 在ASP.NET 2.0中操作数据之五十五:编辑和删除现有的二进制数据
- Android编程实现图片透明的方法
- CN域名强势发展 稳居全球第一大国家顶级域名
- java IO数据操作流、对象序列化、压缩流代码解析