1. 程式人生 > >ES6中Json、String、Map、Object之間的轉換

ES6中Json、String、Map、Object之間的轉換

'use strict';
import React, {Component} from 'react'
/**
 *JsonUitl的實現
 */
class JsonUtils extends React.Component {
/**
 *字串轉json
 *
 */
static stringToJson(data){
    return JSON.parse(data);
}
/**
 *json轉字串
 */
static jsonToString(data){
    return JSON.stringify(data);
}
/**
 *map轉換為json
 */
static mapToJson(map) {
    return JSON.stringify(JsonUtils.strMapToObj(map));
}
/**
 *json轉換為map
 */
static jsonToMap(jsonStr){
    return  JsonUtils.objToStrMap(JSON.parse(jsonStr));
}
/**
 *map轉化為物件(map所有鍵都是字串,可以將其轉換為物件)
 */
static strMapToObj(strMap){
    let obj= Object.create(null);
    for (let[k,v] of strMap) {
        obj[k] = v;
    }
    return obj;
}

/**
 *物件轉換為Map
 */
static   objToStrMap(obj){
    let strMap = new Map();
    for (let k of Object.keys(obj)) {
        strMap.set(k,obj[k]);
    }
    return strMap;
}
}
module.exports=JsonUtils;