zoukankan      html  css  js  c++  java
  • JSON数据实际应用

    JSON序列化输出

    var xiaoming = {
      name: '小明',
      age: 14,
      gender: true,
      height: 1.65,
      grade: null,
      'middle-school': '"W3C" Middle School',
      skills: ['JavaScript', 'Java', 'Python', 'Lisp']
    };

    stringify()用于从一个对象解析出字符串

    alert(JSON.stringify(xiaoming, '/n', ' ')); //换行,原样输出JSON,如果不加stringify()做处理会解析不出这个数据,处理结果为undefined
     alert(JSON.stringify(xiaoming, ['height','age'], ' ')); //第二个参数可以选填 只显示选中的数据,其他数据不显示 
    function convert(key, value) {
    
       if (typeof value === 'string') {
    
         return value.toUpperCase(); //字符串的转换为大写
      }
        return value;
     }
    
      console.log(JSON.stringify(xiaoming, convert, ' ')); 
    可以直接用浏览器console控制台,把代码复制进去看执行结果,这个结果是转换大写

    精确控制如何序列化

    //如果我们还想要精确控制如何序列化小明,可以给xiaoming定义一个toJSON()的方法,直接返回JSON应该序列化的数据
    var
    xiaoming = {   name: '小明',   age: 14,   gender: true,   height: 1.65,   grade: null,   'middle-school': '"W3C" Middle School',   skills: ['JavaScript', 'Java', 'Python', 'Lisp'],  toJSON: function(){ //这是字面量的写法 其他就用正常的函数写即可, function toJSON(){return }  return{     '姓名':'小明',     '年龄':14   } } }; console.log(JSON.stringify(xiaoming));  

    反序列化(json解析)

    console.log(JSON.parse('{"name":"小明","age":14}')); 
    var jsn = JSON.parse('{"name":"小明","age":14}', function (key, value) {
    
        if(key === 'name') {
          return value + '同学';
        }
          return value;
     });
         console.log(jsn);
  • 相关阅读:
    Centos R安装
    python 排序函数L.sort()和sorted()
    系统评测指标:准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F-Score
    linux exec使用小结
    linux 日志文件
    数据结构中的八大排序算法
    Boyer-Moore(BM)算法,文本查找,字符串匹配问题
    内存为程序分配空间的四种分配方式
    内部碎片、外部碎片
    函数调用过程栈帧变化详解
  • 原文地址:https://www.cnblogs.com/Model-Zachary/p/6082982.html
Copyright © 2011-2022 走看看