使用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 相关文章推荐
枚举的实现求得1-1000所有出现1的数字并计算出现1的个数
Sep 10 Javascript
javascript动态控制服务器控件实例
Sep 05 Javascript
JS实现环形进度条(从0到100%)效果
Jul 05 Javascript
AngularJs  Creating Services详解及示例代码
Sep 02 Javascript
JS中this上下文对象使用方式
Oct 09 Javascript
浅析javaScript中的浅拷贝和深拷贝
Feb 15 Javascript
基于EasyUI的基础之上实现树形功能菜单
Jun 28 Javascript
常用的9个JavaScript图表库详解
Dec 19 Javascript
微信小程序页面渲染实现方法
Nov 06 Javascript
微信小程序实现Swiper轮播图效果
Nov 22 Javascript
详解vue v-model
Aug 31 Javascript
JavaScript 中判断变量是否为数字的示例代码
Oct 22 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
探讨如何在php168_cms中提取验证码
2013/06/08 PHP
PHP实现支持SSL连接的SMTP邮件发送类
2015/03/05 PHP
php获取linux命令结果的实例
2017/03/13 PHP
PHP实现数据库统计时间戳按天分组输出数据的方法
2017/10/10 PHP
laravel项目利用twemproxy部署redis集群的完整步骤
2018/05/11 PHP
Javascript 不能释放内存.
2006/09/07 Javascript
简单的无缝滚动程序-仅几行代码
2007/05/08 Javascript
fix-ie5.js扩展在IE5下不能使用的几个方法
2007/08/20 Javascript
js中的string.format函数代码
2020/08/11 Javascript
JavaScript取得鼠标绝对位置程序代码介绍
2012/09/16 Javascript
js复制网页内容并兼容各主流浏览器的代码
2013/12/17 Javascript
js 弹出新页面避免被浏览器、ad拦截的一种新方法
2014/04/30 Javascript
Javascript中封装window.open解决不兼容问题
2014/09/28 Javascript
js精美的幻灯片画集特效代码分享
2015/08/29 Javascript
使用NodeJs 开发微信公众号(三)微信事件交互实例
2016/03/02 NodeJs
javascript实现简单的on事件绑定
2016/08/23 Javascript
微信小程序实现图片上传功能实例(前端+PHP后端)
2018/01/10 Javascript
详解使用VUE搭建后台管理系统(vue-cli更新至3.0)
2018/08/22 Javascript
JS Math对象与Math方法实例小结
2019/07/05 Javascript
phpsir 开发 一个检测百度关键字网站排名的python 程序
2009/09/17 Python
在Lighttpd服务器中运行Django应用的方法
2015/07/22 Python
Python基于matplotlib绘制栈式直方图的方法示例
2017/08/09 Python
django 通过ajax完成邮箱用户注册、激活账号的方法
2018/04/17 Python
10分钟教你用Python实现微信自动回复功能
2018/11/28 Python
python twilio模块实现发送手机短信功能
2019/08/02 Python
Laravel框架表单验证格式化输出的方法
2019/09/25 Python
Python递归调用实现数字累加的代码
2020/02/25 Python
python实现微信打飞机游戏
2020/03/24 Python
详解CSS3浏览器兼容
2016/12/14 HTML / CSS
英国首屈一指的票务公司:See Tickets
2019/05/11 全球购物
安全教育实施方案
2014/03/02 职场文书
正风肃纪查摆剖析材料
2014/10/10 职场文书
抄袭同学作业检讨书1000字
2014/11/20 职场文书
公司感谢信范文
2015/01/22 职场文书
教师个人年度总结
2015/02/11 职场文书
工作总结之小学教师体育工作范文(3篇)
2019/10/07 职场文书