window.onload = function(){
      var str = 'abc,dbc,qqq,aaa';
      var sp = split(str,',')//与字符串的分隔符要一直。
      alert(sp[0])//abc;
function split(s,symbol){
var d = [];//保存所有的字符
var arr = [];//保存有分隔符的位置
var array = [];//以数组的形式返回分割后的字符串
var b = 0;
var str = [];//保存,的准确位置 for(var i = 0; i< s.length; i++){
d.push(s.charAt(i));//向p单个添加str的所有字符
} for(var j = 0; j< d.length; j++){
if(d[j] == symbol){//判断数组d里有没有等于分隔符的;
arr[j] = j;//有就给arr添加他的位置。
}
} for(var i = 0; i<arr.length; i++){
if(arr[i] != undefined){//因为直接向arr数组添加的 不是通过push添加 所以其他位置都是undefined
str[b] = arr[i];//str[b]就等于有分割符的位置
b++;
}
} for(var k = 0; k<str.length; k++){
if(k == str.length){
array[k]=s.substring(str[k-1]+1,s.length);
}else{
array[k]=s.substring(str[k-1]+1,str[k]);//k=0的时候 -1+1 = 0,0到str保存的第一个分隔符的位置。
}
}
return array;
}
}

原生JS实现字符串分割的更多相关文章

  1. 使用原生JS进行字符串转对象

    字符串转对象 目的 工作中如果需要原生 JS 完成字符转对象的话可以通过 JSON.parse(str), 但是这个方法是ES5中才出现, 如果需要兼容低版本就需要其它方法 使用原生 JS 解决字符串 ...

  2. JS对象 字符串分割 split() 方法将字符串分割为字符串数组,并返回此数组。 语法: stringObject.split(separator,limit)

    字符串分割split() 知识讲解: split() 方法将字符串分割为字符串数组,并返回此数组. 语法: stringObject.split(separator,limit) 参数说明: 注意:如 ...

  3. 模板字符串原理,原生js实现字符串模板

    在使用模板字符串的时候使用的是 '{{}}'形式进行书写,本文则向各位解密这么写的原因 初体验正则 首先要先明白正则表达式中exec的使用 例如: let str = 'axu1997@qq.com' ...

  4. 原生js反转字符串

    //直接操作 var str='nama';var rts=str.split('').reverse().join(''); //String上拓展方法String.prototype.revers ...

  5. 原生js将数组分割成固定个数一组的小数组

    reSetData(dataList,num) { let arr = []; let len = dataList.length; for (let i = 0; i < len; i += ...

  6. 如何用原生js替换字符串中的某个字符(或字符串)为指定的字符串?

    <html> <head><title>我的第一个 HTML 页面</title></head><script type=" ...

  7. js 小工具-- 原生 js 去除空格

    // 原生js 去除字符串空格 <script type="text/javascript"> String.prototype.trim = function (){ ...

  8. js 字符串分割成字符串数组 遍历数组插入指定DOM里 原生JS效果

    使用的TP3.2 JS字符串分割成字符串数组 var images='{$content.pictureurl} ' ;结构是这样 attachment/picture/uploadify/20141 ...

  9. 随笔 JS 字符串 分割成字符串数组 并动态添加到指定ID的DOM 里

    JS /* * 字符串 分割成字符串数组 并动态添加到指定ID的DOM 里 * @id 要插入到DOM元素的ID * * 输入值为图片URL 字符串 * */ function addImages(i ...

随机推荐

  1. [转] jQuery 操作 JSON 数据

    jquery下json数组的操作用法实例: jquery中操作JSON数组的情况中遍历方法用的比较多,但用添加移除这些好像就不是太多了. 试过json[i].remove(),json.remove( ...

  2. valgrind用于检测内存泄露

    http://www.thegeekstuff.com/2011/11/valgrind-memcheck/

  3. 大数据技术 vs 数据库一体机[转]

    http://blog.sina.com.cn/s/blog_7ca5799101013dtb.html 目前,虽然大数据与数据库一体机都很火热,但相当一部分人却无法对深入了解这两者的本质区别.这里便 ...

  4. vs2008 edit spin 十六进制实现

    由于做的东西中涉及到一个控件,查了一下叫spin box,但是,spin box控件只在对话框里面才能使用,而且比较麻烦,更何况还要用十六进制,查到就有可多edit+spin来做,后来找到一个样例着手 ...

  5. Eclips入门教程

    1. 插件推荐 Eclipse默认情况下是一个纯净版的,所以功能简单,而开源IDE最为强大的莫过于各种插件,通过使用插件可以帮助我们减少大量编写代码的工作量,也帮助我们降低了编写代码的难度,所以懂得安 ...

  6. [问题解决] File "/struts-tags" not found

    错误:org.apache.jasper.JasperException: File "/struts-tags" not found 发生场景:tomcat服务器 解决方案:将t ...

  7. delete了,析构函数却没有调用

    析构函数在对象的生命结束时,会自动调用,大家所熟知的智能指针就是根据析构函数的这种特性而实现的,包括Qt的内存管理机制,也都是利用了析构函数的这一机制来实现的.c++创始人Bjarne Stroust ...

  8. php mvc 框架演示

    <pre name="code" class="cpp"><pre name="code" class="pyt ...

  9. Azure 网站上的 Java

     编辑人员注释:本文章由Windows Azure 网站团队的项目经理Chris Compy 撰写. Microsoft 已推出针对 Azure 网站上基于 Java 的网站的支持.此功能旨在通过 ...

  10. VC中使用GetModuleFileName获取应用程序路径

      .\\与API函数GetModuleFileName获取应用程序目录有何不一样? 采用.\\也能获得应用程序目录,采用GetModuleFileName也能获得,二者有何不同? 一样!一个是相对路 ...