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 相关文章推荐
用Javscript实现表单复选框的全选功能
May 25 Javascript
JavaScript在IE和Firefox(火狐)的不兼容问题解决方法小结
Apr 13 Javascript
javascript学习笔记(三) String 字符串类型介绍
Jun 19 Javascript
返回顶部按钮响应滚动且动态显示与隐藏
Oct 14 Javascript
js实现双击图片放大单击缩小的方法
Feb 17 Javascript
input type=file 选择图片并且实现预览效果的实例
Oct 26 Javascript
微信小程序实现选项卡功能
Jun 19 Javascript
layui实现二维码弹窗、并下载到本地的方法
Sep 25 Javascript
js的Object.assign用法示例分析
Mar 05 Javascript
浅谈vue 多个变量同时赋相同值互相影响
Aug 05 Javascript
基于vue实现简易打地鼠游戏
Aug 21 Javascript
Vue实现导入Excel功能步骤详解
Jul 03 Vue.js
超链接的禁用属性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
phpExcel导出大量数据出现内存溢出错误的解决方法
2013/02/28 PHP
浅析PHP原理之变量分离/引用(Variables Separation)
2013/08/09 PHP
回帖脱衣服的图片实现代码
2014/02/15 PHP
php给图片加文字水印
2015/07/31 PHP
Symfony2获取web目录绝对路径、相对路径、网址的方法
2016/11/14 PHP
PHP面向对象五大原则之单一职责原则(SRP)详解
2018/04/04 PHP
用 Javascript 验证表单(form)中的单选(radio)值
2009/09/08 Javascript
avalon js实现仿微博拖动图片排序
2015/08/14 Javascript
使用OpenLayers3 添加地图鼠标右键菜单
2015/12/29 Javascript
解决jquery无法找到其他父级子集问题的方法
2016/05/10 Javascript
JS获取IMG图片高宽的简单实例
2016/05/17 Javascript
Javascript中类式继承和原型式继承的实现方法和区别之处
2017/04/25 Javascript
vue.js内部自定义指令与全局自定义指令的实现详解(利用directive)
2017/07/11 Javascript
Bootstrap提示框效果的实例代码
2017/07/12 Javascript
vue 怎么创建组件及组件使用方法
2017/07/27 Javascript
JavaScript原生实现观察者模式的示例
2017/12/15 Javascript
利用vue和element-ui设置表格内容分页的实例
2018/03/02 Javascript
写给新手同学的vuex快速上手指北小结
2020/04/14 Javascript
JS算法教程之字符串去重与字符串反转
2020/12/15 Javascript
[02:16]2018年度CS GO最具人气选手-完美盛典
2018/12/16 DOTA
使用Protocol Buffers的C语言拓展提速Python程序的示例
2015/04/16 Python
python监控文件或目录变化
2016/06/07 Python
python append、extend与insert的区别
2016/10/13 Python
基于Django的python验证码(实例讲解)
2017/10/23 Python
在Python中将函数作为另一个函数的参数传入并调用的方法
2019/01/22 Python
解决Django生产环境无法加载静态文件问题的解决
2019/04/23 Python
Pytorch 卷积中的 Input Shape用法
2020/06/29 Python
python使用列表的最佳方案
2020/08/12 Python
Lampenwelt德国:欧洲领先的灯具和照明在线商店
2018/08/05 全球购物
英国哈罗德园艺:Harrod Horticultural
2020/03/31 全球购物
专业实习自我鉴定
2013/10/29 职场文书
《赶海》教学反思
2014/04/20 职场文书
大学生联谊活动策划书(光棍节)
2014/10/10 职场文书
2014年驻村干部工作总结
2014/11/17 职场文书
党员检讨书范文
2014/12/27 职场文书
dubbo服务整合zipkin详解
2021/07/26 Java/Android