javascript类的理解和使用
距离上次写博客已经过去好几个月了,现在手里的项目正好都结束了,闲暇之后开始理一下开发中一些问题,这次说一下javascript当中的类,可能很多人对于写惯了前台页面效果的coder来说,对于javascript当中的类,他们可能很少使用!这次我简单的写一个类,包括一些方法!
var ArrayList = function ()
{
var arr = [];
this.add = function (p)//新增
{
arr[arr.length] = p;
}; this.get = function (index)//获取
{
if (index > -1 && index < arr.length)
return arr[index];
return null;
}; this.remove = function (obj)
{
if (obj != null && arr.length > 0)
{ var index = this.indexOf(obj);
if (index != -1)
{
this.removeAt(index);
}
}
};//删除对象 this.removeAt = function (index) //删除指定索引的对象
{
if (index != null && arr.length > 0)
{
if (arr.length == 1 && index == 0)//
{
this.clear();
} else
{
// arr.slice(0, index).concat(arr.slice(index + 1, arr.length));
arr.splice(index, 1);
}
}
}; //清除
this.clear = function ()
{
arr.length = 0;
}; this.replace = function (obj, newObj)//替换
{
if (arr.length > 0)
{
var index = this.indexOf(obj);
arr.splice(index, 1, newObj);
}
}; this.indexOf = function (obj)//获取对象的索引
{
if (arr.length > 0 && obj != null)
{
for (var i = 0; i < arr.length; i++)
{
if (arr[i] == obj)
return i;
}
return -1;
}
}; this.lastIndexOf = function (obj)//返回最后一个值
{
for (var i = arr.length - 1; i > 0; i--)
{
if (obj == arr[i])
return arr[i];
}
return null;
}; this.getCount = function ()//返回集合长度
{
return arr.length;
}; this.toArray = function ()//初始化数组
{
var temp = new Array();
for (var i = 0; i < arr.length; i++)
{
temp[i] = arr[i];
}
return temp;
};
这是一个简单的类的写法,对于类当中的this关键字我表示这个好比C#后台类当中的public访问修饰符一样的概念,如果换成了var,那么当你实例化这个类的时候就无法访问这个类的方法了。请牢记哦!
javascript类的理解和使用的更多相关文章
- 对Javascript 类、原型链、继承的理解
一.序言 和其他面向对象的语言(如Java)不同,Javascript语言对类的实现和继承的实现没有标准的定义,而是将这些交给了程序员,让程序员更加灵活地(当然刚开始也更加头疼)去定义类,实现继承 ...
- JavaScript es6 class类的理解。
本着互联网的分享精神,在本篇文章我将会把我对JavaScript es6 class类的理解分享给大家. JavaScript 类主要是 JavaScript 现有的基于原型的继承的语法糖. 类语法 ...
- JavaScript 类式继承与原型继承
交叉着写Java和Javascript都有2年多了,今天来总结下自己所了解的Javascript类与继承. Javascript本身没有类似Java的面向对象的类与继承术语,但其基于原型对象的思想却可 ...
- 第九章:Javascript类和模块
(过年了,祝大家新年好!) 第6章详细介绍了javascript对象,每个javascript对象都是一个属性集合,相互之间没有任何联系.在javascript中也可以定义对象的类,让每个对象都共享某 ...
- javascript单例模式的理解
javascript单例模式的理解 阅读目录 理解单例模式 使用代理实现单例模式 理解惰性单例 编写通用的惰性单例 单例模式使用场景 回到顶部 理解单例模式 单例模式的含义是: 保证一个类只有一个实例 ...
- 一种JavaScript 类的设计模式
一种JavaScript 类的设计模式尽管前面介绍了如何定义一个类,如何初始化一个类的实例,但既可以在function定义的函数体中添加成员,又可以用prototype 定义类的成员,代码显的很混乱, ...
- JavaScript学习总结(十三)——极简主义法编写JavaScript类
前两天在网上无意中发现了一篇使用极简主义法定义JavaScript类的文章,原文链接,这个所谓的"极简主义法"我还是第一次听说,是荷兰程序员Gabor de Mooij提出来的,这 ...
- javascript javascript面向对象的理解及简单的示例
javascript面向对象的理解及简单的示例 零.本节重点: 1.封装: 2.继承: 壹.下面理解: 一. javascript面向对象概念: 为了说明 JavaScript 是一门彻底的面向对象的 ...
- 你需要知道的 JavaScript 类(class)的这些知识
作者: Dmitri Pavlutin译者:前端小智来源:dmitripavlutin 点赞再看,养成习惯 本文 GitHub https://github.com/qq44924588... 上已经 ...
随机推荐
- Mac 安装终端软件
1.安装或者重新安装lua环境 下载 lua 地址: http://www.lua.org/versions.html 1.进入 lua 目录 2.make macosx 3.sudo make in ...
- Openvswitch原理与代码分析(3): openvswitch内核模块的加载
上一节我们讲了ovs-vswitchd,其中虚拟网桥初始化的时候,对调用内核模块来添加虚拟网卡. 我们从openvswitch内核模块的加载过程,来看这个过程. 在datapath/dat ...
- iOS10 升级兼容必备参考
最近提交审核不通过,再iOS10上运行崩溃 .然后需要处理崩溃的问题,晚上找了一下,整理收集起来. 方便后续查看使用. 以下参考链接特别有用: http://blog.csdn.net/gbking/ ...
- 实例详解 DB2 排序监控和调优
实例详解 DB2 排序监控和调优http://automationqa.com/forum.php?mod=viewthread&tid=2882&fromuid=2
- 做最好的日期控件,My97 DatePicker 4.8 Beta4
4.8更新的内容 [新增]preload预载选项 [新增]时分秒选择菜单的定制功能,详见hmsMenuCfg属性[beta4] [新增]$dp.unbind函数,允许用户手动接触日期控件绑定[beta ...
- WPF国际化(多语言)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.W ...
- [转]使用Xcode 4发布App 实例操作
使用xcode 4发布app 实例操作是本文介绍的内容,不多说,我们直接进入话题. 1.iOS Provisioning Portal 和iTunes Connect 没有变,下载与安装.mobile ...
- MVC过滤器中获取实体类属性值
本文地址:http://www.cnblogs.com/outtamyhead/p/3616913.html,转载请保留本地址! 最近在项目遇到了这个问题:获取Action行参中实体类的属性值,主要的 ...
- DbUtils使用例子
DbUtils: JDBC Utility Component Examples This page provides examples that show how DbUtils may be us ...
- 云计算之路-阿里云上:消灭“黑色n秒”第二招——给w3wp进程指定CPU核
虽然昨天的第一招失败了,但是从失败中我们学到了与多核CPU相关的Processor Affinity(处理器关联)的知识. 既然我们可以让.NET程序的不同线程运行于指定的CPU核,那是不是也可以让I ...