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下数值型比较难点说明
Jun 07 Javascript
js实现浏览器的各种菜单命令比如打印、查看源文件等等
Oct 24 Javascript
jQuery+PHP实现动态数字展示特效
Mar 14 Javascript
文字垂直滚动之javascript代码
Jul 29 Javascript
Javascript 动态改变imput type属性
Nov 01 Javascript
React中ES5与ES6写法的区别总结
Apr 21 Javascript
jQuery输入框密码的显示隐藏【代码分享】
Apr 29 jQuery
详解如何让Express支持async/await
Oct 09 Javascript
浅谈React和Redux的连接react-redux
Dec 04 Javascript
JavaScript之实现一个简单的Vue示例
Jan 17 Javascript
Angular8 Http拦截器简单使用教程
Aug 20 Javascript
Vue 一键清空表单的实现方法
Feb 07 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
受疫情影响 动画《Re从零开始的异世界生活》第二季延期至7月
2020/03/10 日漫
CodeIgniter连贯操作的底层原理分析
2016/05/17 PHP
PHP编程 SSO详细介绍及简单实例
2017/01/13 PHP
PHP的mysqli_ssl_set()函数讲解
2019/01/23 PHP
给Javascript数组插入一条记录的代码
2007/08/30 Javascript
js如何获取object类型里的键值
2014/02/18 Javascript
jQuery表格列宽可拖拽改变且兼容firfox
2014/09/03 Javascript
JavaScript 学习笔记之数据类型
2015/01/14 Javascript
JQuery插件Quicksand实现超炫的动画洗牌效果
2015/05/03 Javascript
jQuery实现新消息在网页标题闪烁提示
2015/06/23 Javascript
JavaScript中的各种操作符使用总结
2016/05/26 Javascript
老生常谈Javascript中的原型和this指针
2016/10/09 Javascript
JS动态遍历json中所有键值对的方法(不知道属性名的情况)
2016/12/28 Javascript
关于微信小程序bug记录与解决方法
2018/08/15 Javascript
H5+C3+JS实现双人对战五子棋游戏(UI篇)
2020/05/28 Javascript
Echarts之悬浮框中的数据排序问题
2018/11/08 Javascript
Net微信网页开发 使用微信JS-SDK获取当前地理位置过程详解
2019/08/26 Javascript
Python 第一步 hello world
2009/09/25 Python
使用Python内置的模块与函数进行不同进制的数的转换
2016/03/12 Python
Python数据分析之获取双色球历史信息的方法示例
2018/02/03 Python
python 实现创建文件夹和创建日志文件的方法
2019/07/07 Python
解决python gdal投影坐标系转换的问题
2020/01/17 Python
Python经典五人分鱼实例讲解
2021/01/04 Python
Parfume Klik丹麦:香水网上商店
2018/07/10 全球购物
一套软件开发工程师笔试题
2015/05/18 面试题
致共产党员倡议书
2014/04/16 职场文书
付款委托书范本
2014/10/05 职场文书
承兑汇票转让证明怎么写?
2014/11/30 职场文书
小学班级标语口号大全
2015/12/26 职场文书
如何使用Python提取Chrome浏览器保存的密码
2021/06/09 Python
浅谈Python数学建模之数据导入
2021/06/23 Python
Java实现多线程聊天室
2021/06/26 Java/Android
MySQL一些常用高级SQL语句
2021/07/03 MySQL
html+css实现环绕倒影加载特效
2021/07/07 HTML / CSS
Django+Nginx+uWSGI 定时任务的实现方法
2022/01/22 Python
「约定的梦幻岛」作画发布诺曼生日新绘
2022/03/21 日漫