使用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 相关文章推荐
jQuery的实现原理的模拟代码 -2 数据部分
Aug 01 Javascript
js导航菜单(自写)简单大方
Mar 28 Javascript
纯JS实现根据CSS的class选择DOM
Mar 22 Javascript
Jquery使用val方法读写value值
May 18 Javascript
jQuery 跨域访问解决原理案例详解
Jul 09 Javascript
BootStrap Fileinput的使用教程
Dec 30 Javascript
jQuery实现的监听导航滚动置顶状态功能示例
Jul 23 jQuery
微信小程序仿今日头条导航栏滚动解析
Aug 20 Javascript
vue 关闭浏览器窗口的时候,清空localStorage的数据示例
Nov 06 Javascript
JavaScript 实现轮播图特效的示例
Nov 05 Javascript
JavaScript实现京东快递单号查询
Nov 30 Javascript
Vue3中的Refs和Ref详情
Nov 11 Vue.js
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
dedecms模板标签代码官方参考
2007/03/17 PHP
ionCube 一款类似zend的PHP加密/解密工具
2010/07/25 PHP
30 个很棒的PHP开源CMS内容管理系统小结
2011/10/14 PHP
php面向对象与面向过程两种方法给图片添加文字水印
2015/08/26 PHP
yii2 上传图片的示例代码
2018/11/02 PHP
PHP实现15位身份证号转18位的方法分析
2019/10/16 PHP
laravel框架语言包拓展实现方法分析
2019/11/22 PHP
JavaScript的目的分析
2007/01/05 Javascript
JavaScript设置IFrame高度自适应(兼容各主流浏览器)
2013/06/05 Javascript
JavaScript基本语法讲解
2015/06/03 Javascript
JS编写函数实现对身份证号码最后一位的验证功能
2016/12/29 Javascript
JavaScript中的子窗口与父窗口的互相调用问题
2017/02/08 Javascript
微信小程序 Nginx环境配置详细介绍
2017/02/14 Javascript
Bootstrap 设置datetimepicker在屏幕上面弹出设置方法
2017/03/21 Javascript
微信小程序中上传图片并进行压缩的实现代码
2018/08/28 Javascript
electron实现静默打印的示例代码
2019/08/12 Javascript
Ubuntu下安装PyV8
2016/03/13 Python
为什么选择python编程语言入门黑客攻防 给你几个理由!
2018/02/02 Python
Python数据分析之双色球统计两个红和蓝球哪组合比例高的方法
2018/02/03 Python
Python内置模块hashlib、hmac与uuid用法分析
2018/02/12 Python
Python 新建文件夹与复制文件夹内所有内容的方法
2018/10/27 Python
Python使用sklearn库实现的各种分类算法简单应用小结
2019/07/04 Python
python集合能干吗
2020/07/19 Python
CSS3,线性渐变(linear-gradient)的使用总结
2017/01/09 HTML / CSS
Martinelli官方商店:西班牙皮鞋和高跟鞋品牌
2019/07/30 全球购物
欧洲最大的高尔夫零售商:American Golf
2019/09/02 全球购物
SCHIESSER荷兰官方网站:德国内衣专家
2020/10/09 全球购物
高中生职业生涯规划书
2014/02/24 职场文书
高中军训感想300字
2014/03/04 职场文书
委托协议书范本
2014/04/22 职场文书
12.4法制宣传日活动总结
2014/08/26 职场文书
2015年财务科工作总结范文
2015/05/13 职场文书
地震捐款简报
2015/07/21 职场文书
检讨书格式
2019/04/25 职场文书
Unicode中的CJK(中日韩统一表意文字)字符小结
2021/12/06 HTML / CSS
MIME类型中application/xml与text/xml的区别介绍
2022/01/18 HTML / CSS