使用indexOf等在JavaScript的数组中进行元素查找和替换


Posted in Javascript onSeptember 18, 2013
<html> 
<head> 
<title> Extend JavaScript Array Method </title> 
<script language="javascript"> 
<!-- 
Array.prototype.indexOf=function(substr,start){ 
var ta,rt,d='\0'; 
if(start!=null){ta=this.slice(start);rt=start;}else{ta=this;rt=0;} 
var str=d+ta.join(d)+d,t=str.indexOf(d+substr+d); 
if(t==-1)return -1;rt+=str.slice(0,t).replace(/[^\0]/g,'').length; 
return rt; 
} Array.prototype.lastIndexOf=function(substr,start){ 
var ta,rt,d='\0'; 
if(start!=null){ta=this.slice(start);rt=start;}else{ta=this;rt=0;} 
ta=ta.reverse();var str=d+ta.join(d)+d,t=str.indexOf(d+substr+d); 
if(t==-1)return -1;rt+=str.slice(t).replace(/[^\0]/g,'').length-2; 
return rt; 
} 
Array.prototype.replace=function(reg,rpby){ 
var ta=this.slice(0),d='\0'; 
var str=ta.join(d);str=str.replace(reg,rpby); 
return str.split(d); 
} 
Array.prototype.search=function(reg){ 
var ta=this.slice(0),d='\0',str=d+ta.join(d)+d,regstr=reg.toString(); 
reg=new RegExp(regstr.replace(/\/((.|\n)+)\/.*/g,'\\0$1\\0'),regstr.slice(regstr.lastIndexOf('/')+1)); 
t=str.search(reg);if(t==-1)return -1;return str.slice(0,t).replace(/[^\0]/g,'').length; 
} 
window.onload=function(){ 
var a=new Array('aa1321321','b4323424b','cc345345','dd4654','dd4654','b4323424b'); 
document.getElementById('t1').value=a.toString(); 
//document.getElementById('t2').value=a.indexOf('cc345345'); 
//document.getElementById('t3').value=a.lastIndexOf('dd4654'); 
document.getElementById('t4').value=a.replace('b4323424b','*');//把第一个b4323424b替换成* 
document.getElementById('t5').value=a.search(/dd4654/);//未找到返回-1 
}; 
//--> 
</script> 
<style type="text/css"> 
<!-- 
input{width:600px} 
//--> 
</style> 
</head> 
<body> 
<table> 
<tr><td>数组a:</td><td><input id="t1" type="text" /></td></tr> 
<tr><td>a.indexOf('cc345345'):</td><td><input id="t2" type="text" /></td></tr> 
<tr><td>a.lastIndexOf('dd4654'):</td><td><input id="t3" type="text" /></td></tr> 
<tr><td>a.replace(/\d/g,'*'):</td><td><input id="t4" type="text" /></td></tr> 
<tr><td>a.search(/dd4654/):</td><td><input id="t5" type="text" /></td></tr> 
</table> 
</body> 
</html>
Javascript 相关文章推荐
javascript检查日期格式的函数[比较全]
Oct 17 Javascript
关于html+ashx开发中几个问题的解决方法
Jul 18 Javascript
jquery入门—选择器实现隔行变色实例代码
Jan 04 Javascript
JQuery切换显示的效果实例代码
Feb 27 Javascript
js操作iframe父子窗体示例
May 22 Javascript
js的touch事件的实际引用
Oct 13 Javascript
JS实现5秒钟自动封锁div层的方法
Feb 20 Javascript
详解Angular.js的$q.defer()服务异步处理
Nov 06 Javascript
javascript入门之数组[新手必看]
Nov 21 Javascript
关于jQuery库冲突的完美解决办法
May 20 jQuery
jQuery ajax仿Google自动提示SearchSuggess功能示例
Mar 28 jQuery
微信小程序收货地址API兼容低版本解决方法
May 18 Javascript
JSON 数字排序多字段排序介绍
Sep 18 #Javascript
json数据与字符串的相互转化示例
Sep 18 #Javascript
如何让DIV可编辑、可拖动示例代码
Sep 18 #Javascript
jQuery extend 的简单实例
Sep 18 #Javascript
Javascript中Event属性搜集整理
Sep 17 #Javascript
js获取html文件的思路及示例
Sep 17 #Javascript
JS的Document属性和方法小结
Sep 17 #Javascript
You might like
中国站长站 For Dede4.0 采集规则
2007/05/27 PHP
php ajax 静态分页过程形式
2011/09/02 PHP
php curl抓取网页的介绍和推广及使用CURL抓取淘宝页面集成方法
2015/11/30 PHP
ThinkPHP实现附件上传功能
2017/04/27 PHP
php use和include区别总结
2019/10/13 PHP
PHP连接MySQL数据库三种实现方法
2020/12/10 PHP
[对联广告] JS脚本类
2006/08/27 Javascript
JQuery 入门实例1
2009/06/25 Javascript
extjs 学习笔记(二) Ext.Element类
2009/10/13 Javascript
javascript 不间断的图片滚动并可点击
2010/01/15 Javascript
javascript 的Document属性和方法集合
2010/01/25 Javascript
javascript中的作用域scope介绍
2010/12/28 Javascript
html a标签-超链接中confirm方法使用介绍
2013/01/04 Javascript
Jquery中使用setInterval和setTimeout的方法
2013/04/08 Javascript
详解JavaScript中的表单验证
2015/06/16 Javascript
常用原生JS兼容性写法汇总
2016/04/27 Javascript
详解webpack分离css单独打包
2017/06/21 Javascript
jQuery实现的鼠标拖动浮层功能示例【拖动div等任何标签】
2018/12/29 jQuery
JavaScript&quot;模拟事件&quot;的注意要点详解
2019/02/13 Javascript
8个有意思的JavaScript面试题
2019/07/30 Javascript
node.js 使用 net 模块模拟 websocket 握手进行数据传递操作示例
2020/02/11 Javascript
Vue 事件的$event参数=事件的值案例
2021/01/29 Vue.js
[01:05:29]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Aster BO3 第二场 1月24日
2021/03/11 DOTA
Python简单操作sqlite3的方法示例
2017/03/22 Python
PyQt4编程之让状态栏显示信息的方法
2019/06/18 Python
Python创建空列表的字典2种方法详解
2020/02/13 Python
Python迭代器协议及for循环工作机制详解
2020/07/14 Python
python爬虫scrapy基于CrawlSpider类的全站数据爬取示例解析
2021/02/20 Python
解决HTML5手机端页面缩放的问题
2017/10/27 HTML / CSS
canvas线条的属性详解
2018/03/27 HTML / CSS
澳大利亚有机化妆品网上商店:The Well Store
2020/02/20 全球购物
《盘古开天地》教学反思
2014/02/28 职场文书
班级文化标语
2014/06/23 职场文书
航班延误投诉信
2015/07/02 职场文书
人为什么会“幸灾乐祸”?
2019/08/06 职场文书
python turtle绘图
2022/05/04 Python