javascript里绝对用的上的字符分割函数总结


Posted in Javascript onJuly 31, 2014
var data = [['your name', 'myvalue'], ['myr name', 'thivalue']];

function string_join(data) {
  var str = '', arr = [];
  for (var i = 0; i < data.length; i++) {
   for (var j = 0; j < data[i].length; j++) {
    data[i][j] = slash(data[i][j]);
   }
   arr.push(data[i].join('/'));
  }
  return arr.join(',');
}

function slash(string) {
 return String(string).replace(/[\\/,]/g, '\\$&');
}

function string_split(string) {
 var c,
   cur_str = '',
   cache = [],
   result = [];
 for (var i = 0; i < string.length; i++) {
  c = string.charAt(i);
  switch(c) {
   case '\\':
    cur_str += string.charAt(++i);
    break;
   case '/':
    cache.push(cur_str);
    cur_str = '';
    break;
   case ',':
    cache.push(cur_str);
    cur_str = '';
    result.push(cache);
    cache = [];
    break;
   default:
    cur_str += c;
  }
 }

 if (cur_str.length) {
  cache.push(cur_str);
 }

 if (cache.length) {
  result.push(cache);
 }

 return result;
}

var before = string_join(data);
console.log(before);
var after = string_split(before);
console.log(after);
Javascript 相关文章推荐
纯js实现的论坛常用的运行代码的效果
Jul 15 Javascript
悄悄用脚本检查你访问过哪些网站的代码
Dec 04 Javascript
js 剪切板的用法(clipboardData.setData)与js match函数介绍
Nov 19 Javascript
浅谈下拉菜单中的Option对象
May 10 Javascript
jquery实现用户信息修改验证输入方法汇总
Jul 18 Javascript
JS完成画圆圈的小球
Mar 07 Javascript
jQuery实现动态生成表格并为行绑定单击变色动作的方法
Apr 17 jQuery
深究AngularJS如何获取input的焦点(自定义指令)
Jun 12 Javascript
ES6学习教程之块级作用域详解
Oct 09 Javascript
JavaScript简单实现合并两个Json对象的方法示例
Oct 16 Javascript
js实现QQ邮箱邮件拖拽删除功能
Aug 27 Javascript
javascript数组includes、reduce的基本使用
Jul 02 Javascript
超链接的禁用属性Disabled使用示例
Jul 31 #Javascript
Windows 系统下安装和部署Egret的开发环境
Jul 31 #Javascript
js锁屏解屏通过对$.ajax进行封装实现
Jul 31 #Javascript
javascript函数中参数传递问题示例探讨
Jul 31 #Javascript
JavaScript数值转换的三种方式总结
Jul 31 #Javascript
new Date()问题在ie8下面的处理方法
Jul 31 #Javascript
JS数组的遍历方式for循环与for...in
Jul 31 #Javascript
You might like
php随机输出名人名言的代码
2012/10/07 PHP
开源php中文分词系统SCWS安装和使用实例
2014/04/11 PHP
一个简单的PHP验证码实现代码
2014/05/10 PHP
php自动加载代码实例详解
2021/02/26 PHP
Js event事件在IE、FF兼容性问题
2011/01/01 Javascript
JS 精确统计网站访问量的实例代码
2013/07/05 Javascript
js使下拉列表框可编辑不止是选择
2013/12/12 Javascript
JS获取地址栏参数的几种方法小结
2014/02/28 Javascript
Javascript实现计算个人所得税
2015/05/10 Javascript
深入浅析JavaScript字符串操作方法 slice、substr、substring及其IE兼容性
2015/12/16 Javascript
vue文件树组件使用详解
2018/03/29 Javascript
关于Angularjs中自定义指令一些有价值的细节和技巧小结
2018/04/22 Javascript
JS实现同一DOM元素上onClick事件与onDblClick事件并存的解决方法
2018/06/07 Javascript
vue解决弹出蒙层滑动穿透问题的方法
2018/09/22 Javascript
基于vue写一个全局Message组件的实现
2019/08/15 Javascript
Element InfiniteScroll无限滚动的具体使用方法
2020/07/27 Javascript
ES6中的类(Class)示例详解
2020/12/09 Javascript
Python记录详细调用堆栈日志的方法
2015/05/05 Python
在Python中使用swapCase()方法转换大小写的教程
2015/05/20 Python
使用Python读写文本文件及编写简单的文本编辑器
2016/03/11 Python
python 中random模块的常用方法总结
2017/07/08 Python
使用Python机器学习降低静态日志噪声
2018/09/29 Python
Python3 安装PyQt5及exe打包图文教程
2019/01/08 Python
Python嵌套式数据结构实例浅析
2019/03/05 Python
使用python list 查找所有匹配元素的位置实例
2019/06/11 Python
Python实现的统计文章单词次数功能示例
2019/07/08 Python
Python imageio读取视频并进行编解码详解
2019/12/10 Python
利用python进行文件操作
2020/12/04 Python
python 对象真假值的实例(哪些视为False)
2020/12/11 Python
Fossil德国官网:化石手表、手袋、珠宝及配件
2019/12/07 全球购物
网站开发实习生的自我评价
2013/12/11 职场文书
家长会学生演讲稿
2014/04/26 职场文书
读书伴我成长演讲稿
2014/05/07 职场文书
公司委托书格式范文
2014/10/09 职场文书
2014个人年度工作总结
2014/12/15 职场文书
2016学校元旦晚会经典开场白台词
2015/12/03 职场文书