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 相关文章推荐
jQuery 页面 Mask实现代码
Jan 09 Javascript
Js基础学习资料
Nov 23 Javascript
jQuery实现点击图片翻页展示效果的方法
Feb 16 Javascript
js实现复选框的全选和取消全选效果
Jan 03 Javascript
JQuery实现定时刷新功能代码
May 09 jQuery
动态Axios的配置步骤详解
Jan 12 Javascript
jQuery实现获取form表单内容及绑定数据到form表单操作分析
Jul 03 jQuery
微信小程序实现tab页面切换功能
Jul 13 Javascript
vue动画之点击按钮往上渐渐显示出来的实例
Sep 29 Javascript
Vue 报错TypeError: this.$set is not a function 的解决方法
Dec 17 Javascript
vue  elementUI 表单嵌套验证的实例代码
Nov 06 Javascript
JavaScript/TypeScript 实现并发请求控制的示例代码
Jan 18 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之第八天
2006/10/09 PHP
PHP $_FILES函数详解
2011/03/09 PHP
PHP设计模式之建造者模式定义与用法简单示例
2018/08/13 PHP
js正确获取元素样式详解
2009/08/07 Javascript
jQuery第三课 修改元素属性及内容的代码
2010/03/14 Javascript
jQuery控制的不同方向的滑动(向左、向右滑动等)
2014/07/18 Javascript
jQuery手机浏览器中拖拽动作的艰难性分析
2015/02/04 Javascript
JQuery报错Uncaught TypeError: Illegal invocation的处理方法
2015/03/13 Javascript
javascript组合使用构造函数模式和原型模式实例
2015/06/04 Javascript
jQuery扩展实现text提示还能输入多少字节的方法
2016/11/28 Javascript
详解vue文件中使用echarts.js的两种方式
2018/10/18 Javascript
简单两步使用node发送qq邮件的方法
2019/03/01 Javascript
jquery获取并修改触发事件的DOM元素示例【基于target 属性】
2019/10/10 jQuery
Javascript异步编程async实现过程详解
2020/04/02 Javascript
Vue切换Tab动态渲染组件的操作
2020/09/21 Javascript
python3实现读取chrome浏览器cookie
2016/06/19 Python
Python爬虫实现爬取京东手机页面的图片(实例代码)
2017/11/30 Python
Python带动态参数功能的sqlite工具类
2018/05/26 Python
python format 格式化输出方法
2018/07/16 Python
Python基于SMTP协议实现发送邮件功能详解
2018/08/14 Python
Jupyter Notebook输出矢量图实例
2020/04/14 Python
解决pycharm debug时界面下方不出现step等按钮及变量值的问题
2020/06/09 Python
python中有帮助函数吗
2020/06/19 Python
Python模拟登录requests.Session应用详解
2020/11/17 Python
html5录音功能实战示例
2019/03/25 HTML / CSS
俄罗斯香水和化妆品在线商店:Aroma-butik
2020/02/28 全球购物
database面试题
2013/03/28 面试题
售后求职信范文
2014/03/15 职场文书
企业总经理助理岗位职责
2014/09/12 职场文书
社区党建工作总结2015
2015/05/13 职场文书
经济纠纷起诉状
2015/05/20 职场文书
感恩父母主题班会
2015/08/12 职场文书
php引用传递
2021/04/01 PHP
python实现MD5进行文件去重的示例代码
2021/07/09 Python
详细介绍Java中的CyclicBarrier
2022/04/13 Java/Android
如何解决flex文本溢出问题小结
2022/07/15 HTML / CSS