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中style属性
Oct 11 Javascript
WordPress 插件——CoolCode使用方法与下载
Jul 02 Javascript
Jquery index()方法 获取相应元素索引值
Oct 12 Javascript
JQuery切换显示的效果实例代码
Feb 27 Javascript
js 自动播放的实例代码
Nov 19 Javascript
轻松掌握JavaScript装饰者模式
Aug 27 Javascript
详解Jquery EasyUI tree 的异步加载(遍历指定文件夹,根据文件夹内的文件生成tree)
Feb 11 Javascript
JS中min函数实例讲解
Feb 18 Javascript
Jquery动态列功能完整实例
Aug 30 jQuery
解决layer.confirm快速点击会重复触发事件的问题
Sep 23 Javascript
浅谈JavaScript中你可能不知道URL构造函数的属性
Jul 13 Javascript
js实现圆形菜单选择器
Dec 03 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
改写ThinkPHP的U方法使其路由下分页正常
2014/07/02 PHP
阿里云Win2016安装Apache和PHP环境图文教程
2018/03/11 PHP
php报错502badgateway解决方法
2019/10/11 PHP
URI、URL和URN之间的区别与联系
2006/12/20 Javascript
JavaScript 用cloneNode方法克隆节点的代码
2012/10/15 Javascript
JS+css 图片自动缩放自适应大小
2013/08/08 Javascript
快速解决FusionCharts联动的中文乱码问题
2013/12/04 Javascript
jQuery 设置 CSS 属性示例介绍
2014/01/16 Javascript
javascript常见数据验证插件大全
2015/08/03 Javascript
JS实现图片平面旋转的方法
2016/03/01 Javascript
微信小程序 地图(map)实例详解
2016/11/16 Javascript
Angular5.1新功能分享
2017/12/21 Javascript
vue+iview+less+echarts实战项目总结
2018/02/22 Javascript
在vue里面设置全局变量或数据的方法
2018/03/09 Javascript
小程序视频列表中视频的播放与停止的示例代码
2018/07/20 Javascript
jquery实现下载图片功能
2019/07/18 jQuery
react 不用插件实现数字滚动的效果示例
2020/04/14 Javascript
JS页面动态绘图工具SVG,Canvas,VML介简介
2020/10/16 Javascript
[59:15]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第一场 11.20
2020/11/20 DOTA
Python中让MySQL查询结果返回字典类型的方法
2014/08/22 Python
给Python的Django框架下搭建的BLOG添加RSS功能的教程
2015/04/08 Python
初步解析Python下的多进程编程
2015/04/28 Python
横向对比分析Python解析XML的四种方式
2016/03/30 Python
opencv python 图像去噪的实现方法
2018/08/31 Python
Python机器学习之scikit-learn库中KNN算法的封装与使用方法
2018/12/14 Python
pyqt5实现俄罗斯方块游戏
2019/01/11 Python
python加密解密库cryptography使用openSSL生成的密匙加密解密
2020/02/11 Python
Python实现初始化不同的变量类型为空值
2020/06/02 Python
匡威帆布鞋美国官网:Converse美国
2016/08/22 全球购物
加拿大女鞋品牌:ALDO
2016/11/13 全球购物
美国婚戒购物网站:Anjays Designs
2017/06/28 全球购物
La Senza官网:北美顶尖性感内衣品牌
2018/08/03 全球购物
投标保密承诺书
2014/05/19 职场文书
连锁超市项目计划书
2014/09/15 职场文书
2015年幼儿园教研活动总结
2015/03/25 职场文书
javascript拖曳互换div的位置实现示例
2021/06/28 Javascript