当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JavaScript 字符串与数组转换函数[不用split与join]

Javascript
阻止JavaScript事件冒泡传递(cancelBubble 、stopPropagation)
(转载)JavaScript中匿名函数,函数直接量和闭包
简单的无缝滚动程序-仅几行代码
Javascript中的数学函数集合
javascript之大字符串的连接的StringBuffer 类
javascript之对系统的toFixed()方法的修正
用javascript实现自定义标签
js在客户端验证密码强度,兼容FireFox和IE
javascript背景颜色按时变换
脚本分析、压缩、混淆工具 JSA新版本发布,压缩效率提高大约10%
javascript语句中的CDATA标签的意义
用javascript实现分割提取页面所需内容
网上抓的一个特效
js之点击 超连接,提示一个层.点击空白.层消失
模拟用户操作Input元素,不会触发相应事件
弹出广告特效代码(一个IP只弹出一次)
(仅IE下有效)关于checkbox 三态
JavaScript Archive Network 集合
关于__defineGetter__ 和__defineSetter__的说明
textContent在Firefox下与innerText等效的属性

Javascript 中的 JavaScript 字符串与数组转换函数[不用split与join]


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 372 ::
收藏到网摘: n/a

下面的代码,不考虑他的运行效率的话,思路不错,大家可以看看,但在实际的应用中,我们仍然使用split或join来实现数组的操作。

两个自定义的实现字符串与数组相互转换的js函数,希望能对大家有用:

复制代码 代码如下:

function StringToArray(str,substr) {
/* 函数功能:字符串按照指定字符串分割转换为数组
参数:
str :需转换的字符串
substr:分割字符串
返回值:
转换后的数组
*/
var arrTmp = new Array();
if(substr=="") {
arrTmp.push(str);
return arrTmp;
}
var i=0, j=0, k=str.length;
while(i<k) {
j = str.indexOf(substr,i);
if(j!=-1) {
if(str.substring(i,j)!="") { arrTmp.push(str.substring(i,j)); }
i = j+1;
} else {
if(str.substring(i,k)!="") { arrTmp.push(str.substring(i,k)); }
i = k;
}
}
return arrTmp;
}
function ArrayToString(arr,str) {
/* 函数功能:数组根据分割字符(串)转换为字符串
参数:
arr:需转换的字符串数组
str:分割字符串
返回值:
转换后的字符串
*/
var strTmp = "";
for(var i=0;i<arr.length;i++) {
if(arr[i]!="") {
if(strTmp=="") {
strTmp = arr[i];
} else {
strTmp = strTmp + str + arr[i];
}
}
}
return strTmp;
}

具体的应用可以参考下软晨学习网的相关文章。
javascript数组使用调用方法汇总
http://www.ruanchen.com/"http://www.ruanchen.com/" style="color: #000">http://www.ruanchen.com/rticle/19987.htm