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 相关文章推荐
JavaScript OOP类与继承
Nov 15 Javascript
修改jquery里的dialog对话框插件为框架页(iframe) 的方法
Sep 14 Javascript
悬浮数字的实现案例
Feb 19 Javascript
js实现超简单的展开、折叠目录代码
Aug 28 Javascript
浅谈javascript中的加减时间
Jul 12 Javascript
JS点击某个图标或按钮弹出文件选择框的实现代码
Sep 27 Javascript
jQuery为DOM动态追加事件的方法
Feb 16 Javascript
php 解压zip压缩包内容到指定目录的实例
Jan 23 Javascript
vue中使用axios post上传头像/图片并实时显示到页面的方法
Sep 27 Javascript
Vue实现移动端页面切换效果【推荐】
Nov 13 Javascript
使用 node.js 模仿 Apache 小部分功能
Jul 07 Javascript
使用 Element UI Table 的 slot-scope方法
Oct 10 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
zen cart新进商品的随机排序修改方法
2010/09/10 PHP
php采集中国代理服务器网的方法
2015/06/16 PHP
thinkPHP框架实现的简单计算器示例
2018/12/07 PHP
PHP PDOStatement::fetchColumn讲解
2019/01/31 PHP
Javascript操纵Cookie实现购物车程序
2007/02/15 Javascript
jQuery 浮动广告实现代码
2008/12/25 Javascript
jquery ajax 检测用户注册时用户名是否存在
2009/11/03 Javascript
javascript 事件绑定问题
2011/01/01 Javascript
jquery对象访问是什么及使用方法介绍
2016/05/03 Javascript
谈谈VUE种methods watch和compute的区别和联系
2017/08/01 Javascript
Vue中的vue-resource示例详解
2018/11/02 Javascript
微信小程序入口场景的问题集合与相关解决方法
2019/06/26 Javascript
layui实现数据表格自定义数据项
2019/10/26 Javascript
[52:02]完美世界DOTA2联赛PWL S2 FTD.C vs SZ 第一场 11.27
2020/11/30 DOTA
Python StringIO模块实现在内存缓冲区中读写数据
2015/04/08 Python
Python单链表简单实现代码
2016/04/27 Python
python利用socketserver实现并发套接字功能
2018/01/26 Python
python3将视频流保存为本地视频文件
2018/06/20 Python
Python实现 版本号对比功能的实例代码
2019/04/18 Python
Flask框架路由和视图用法实例分析
2019/11/07 Python
在Python中实现函数重载的示例代码
2019/12/12 Python
浅谈spring boot 集成 log4j 解决与logback冲突的问题
2020/02/20 Python
python数据库操作mysql:pymysql、sqlalchemy常见用法详解
2020/03/30 Python
Python decorator拦截器代码实例解析
2020/04/04 Python
Pycharm打开已有项目配置python环境的方法
2020/07/03 Python
使用html5 canvas创建太空游戏的示例
2014/05/08 HTML / CSS
英国简约舒适女装品牌:Great Plains
2018/07/27 全球购物
欧洲著名的二手奢侈品网站:Vestiaire Collective
2020/03/07 全球购物
乌克兰鞋类购物网站:Eobuv.com.ua
2020/11/28 全球购物
大专毕业生自我鉴定
2013/11/21 职场文书
任命书模板
2014/06/04 职场文书
在职员工证明书
2014/09/19 职场文书
工伤事故赔偿协议书范文
2014/09/24 职场文书
2015教师年度工作总结范文
2015/04/07 职场文书
2015年团委副书记工作总结
2015/07/23 职场文书