JS实现将二维数组转为json格式字符串操作示例


Posted in Javascript onJuly 12, 2018

本文实例讲述了JS实现将二维数组转为json格式字符串操作。分享给大家供大家参考,具体如下:

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>json</title>
  <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
  <script>
  $(function(){
    /*******遍历二维数组*********/
    //定义数组
    var arr=new Array();
    arr =[[1,2],[1,2],[1,2],[1,2]]; //初始化二维数组
    var i,j;
    for(i=0;i<arr.length;i++){
      var arr_l=new Array();//获取二维数组中的一维数组
      arr_1=arr[i];
      //遍历一维数组
      for(j=0;j<arr_1.length;j++){
        //alert(arr_1[j]); // arr_1:表示一位数组中的值
        document.write(arr_1[j]);
      }
    }
    document.write("<br>");
    var array = [[10, 100, 1000], [1000, 100, 10]];
    // encodeArray2D方法
    var jsonStr = encodeArray2D(array);
    //alert(jsonstr);
    document.write(jsonStr);
    document.write("<br>");
    // arrayToJson方法
    var jsonStr2 = arrayToJson(array);
    document.write(jsonStr2);
  });
  /**
  * 将二维数组转为 json 字符串
  */
  function encodeArray2D(obj) {
    var array = [];
    for (var i = 0; i < obj.length; i++) {
      array[i] = '[' + obj[i].join(',') + ']';
    }
    return '[' + array.join(',') + ']';
  }
  /**
  * 将二维数组转为 json 字符串
  */
  function arrayToJson(o) {
    var r = [];
    if (typeof o == "string") return "\"" + o.replace(/([\'\"\\])/g, "\\$1").replace(/(\n)/g, "\\n").replace(/(\r)/g, "\\r").replace(/(\t)/g, "\\t") + "\"";
    if (typeof o == "object") {
      if (!o.sort) {
        for (var i in o)
        r.push(i + ":" + arrayToJson(o[i]));
        if (!!document.all && !/^\n?function\s*toString\s*\{\n?\s*\[native code\]\n?\s*\}\n?\s*$/.test(o.toString)) {
        r.push("toString:" + o.toString.toString());
        }
        r = "{" + r.join() + "}";
      } else {
        for (var i = 0; i < o.length; i++) {
        r.push(arrayToJson(o[i]));
        }
        r = "[" + r.join() + "]";
      }
      return r;
    }
    return o.toString();
  }
</script>
</head>
<body>
</body>
</html>

使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun,测试运行结果如下:

12121212
[[10,100,1000],[1000,100,10]]
[[10,100,1000],[1000,100,10]]

Javascript 相关文章推荐
js 分栏效果实现代码
Aug 29 Javascript
javascript 浏览器检测代码精简版
Mar 04 Javascript
善用事件代理,警惕闭包的性能陷阱。
Jan 20 Javascript
js中通过父级进行查找定位元素
Jun 15 Javascript
jQuery UI插件自定义confirm确认框的方法
Mar 20 Javascript
jQuery控制div实现随滚动条滚动效果
Jun 07 Javascript
BootStrap智能表单实战系列(三)分块表单配置详解
Jun 13 Javascript
js表单登陆验证示例
Oct 19 Javascript
JS数字千分位格式化实现方法总结
Dec 16 Javascript
JavaScript中利用for循环遍历数组
Jan 15 Javascript
详解BootStrap表单验证中重置BootStrap-select验证提示不清除的坑
Sep 17 Javascript
JS实现九宫格拼图游戏
Jun 28 Javascript
vue路由组件按需加载的几种方法小结
Jul 12 #Javascript
js与jQuery实现获取table中的数据并拼成json字符串操作示例
Jul 12 #jQuery
使用json-server简单完成CRUD模拟后台数据的方法
Jul 12 #Javascript
教你如何用node连接redis的示例代码
Jul 12 #Javascript
angular 内存溢出的问题解决
Jul 12 #Javascript
详解vue填坑之解决部分浏览器不支持pushState方法
Jul 12 #Javascript
vue插件开发之使用pdf.js实现手机端在线预览pdf文档的方法
Jul 12 #Javascript
You might like
PHP 的ArrayAccess接口 像数组一样来访问你的PHP对象
2010/10/12 PHP
php防止表单重复提交实例讲解
2019/02/11 PHP
Extjs gridpanel 出现横向滚动条问题的解决方法
2011/07/04 Javascript
javascript实现TreeView 无刷新展开的实例代码
2013/07/13 Javascript
jQuery动态创建html元素的常用方法汇总
2014/09/05 Javascript
Jquery实现由下向上展开效果的例子
2014/12/08 Javascript
JS实现新建文件夹功能
2017/06/17 Javascript
js实现文字列表无缝滚动效果
2017/06/23 Javascript
bing Map 在vue项目中的使用详解
2018/04/09 Javascript
详解Vue项目部署遇到的问题及解决方案
2019/01/11 Javascript
jquery实现点击弹出对话框
2020/02/08 jQuery
python合并文本文件示例
2014/02/07 Python
Python函数中定义参数的四种方式
2014/11/30 Python
Python压缩解压缩zip文件及破解zip文件密码的方法
2015/11/04 Python
scrapy爬虫完整实例
2018/01/25 Python
python中的协程深入理解
2019/06/10 Python
简单了解python高阶函数map/reduce
2019/06/28 Python
python实现对列表中的元素进行倒序打印
2019/11/23 Python
python使用协程实现并发操作的方法详解
2019/12/27 Python
python使用openCV遍历文件夹里所有视频文件并保存成图片
2020/01/14 Python
Python xmltodict模块安装及代码实例
2020/10/05 Python
css3动画过渡实现鼠标跟随导航效果
2018/02/08 HTML / CSS
美国知名男士服饰品牌:Brooks Brothers(布克兄弟)
2016/08/25 全球购物
Shopty西班牙:缝纫机在线销售
2018/01/26 全球购物
工业学校毕业生自荐书
2014/01/03 职场文书
消防安全责任书
2014/04/14 职场文书
《雕塑之美》教学反思
2014/04/24 职场文书
119消防日活动总结
2014/08/29 职场文书
机关党员三严三实心得体会
2014/10/13 职场文书
2014年旅游局法制宣传日活动总结
2014/11/01 职场文书
同步小康驻村工作简报
2015/07/20 职场文书
学习经验交流会演讲稿
2015/11/02 职场文书
大学生党课心得体会
2016/01/07 职场文书
纯 CSS 自定义多行省略的问题(从原理到实现)
2021/11/11 HTML / CSS
把77A收信机改造成收音机
2022/04/05 无线电
MySQL时区造成时差问题
2022/04/13 MySQL