• 24 Json、序列化


    JSON
    	是什么
    		json是一种数据格式
    	序列化
    		意思是把对象字符串化
    
    	number:和JavaScript的number完全一致;
    	boolean:就是JavaScript的true或false;
    	string:就是JavaScript的string;
    	null:就是JavaScript的null;
    	array:就是JavaScript的Array表示方式——[];
    	object:就是JavaScript的{ ... }表示方式。
    	并且,JSON还定死了字符集必须是UTF-8,表示多语言就没有问题了
    	为了统一解析,JSON的字符串规定必须用双引号"",Object的键也必须用双引号""
    
    调用json方法,把对象转化成json
    		JSON.stringify(xiaoming, ['name', 'skills'], '  ');//第一个参数是对象,第二个参数是输出指定的属性,第三个参数是缩进
    		JSON.stringify(xiaoming, null, '  ');
    	
    	function convert(key, value) {
    		if (typeof value === 'string') {
    			return value.toUpperCase();
    		}
    		return value;
    	}
    	JSON.stringify(xiaoming, convert, '  ');//还可以传入一个函数,这样对象的每个属性对都会被函数先处理
    	如果我们还想要精确控制如何序列化小明,可以给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 () {
    			 		return { // 只输出name和age,并且改变了key:
    					'Name': this.name,
    					'Age': this.age
    				};
    			}
    		};
    	JSON.stringify(xiaoming); // '{"Name":"小明","Age":14}'
    	
    调用json方法,把json转化成对象(反序列化)
    		拿到一个JSON格式的字符串,我们直接用JSON.parse()把它变成一个JavaScript对象:
    		JSON.parse('[1,2,3,true]'); // [1, 2, 3, true]
    

      

  • 相关阅读:
    java提高篇(二四)-----HashSet
    链表(线性表)
    逆置线性表(线性表)
    Android布局_表格布局TableLayout
    Android布局_布局概述和LinearLayout布局
    Android_用户界面概述和数据单位
    Android_SDK的常用命令
    Android_程序结构分析
    CSS3_边框属性之圆角的基本图形案例
    CSS3_边框属性之圆角
  • 原文地址:https://www.cnblogs.com/xuanjian-91/p/10267653.html
Copyright © 2020-2023  润新知