SOURCE

function jsonToRawData (json) {
    var method = json['method']
    console.info(method)
    var id = json['id']
    console.info(id)
    var payloadArray = []
    var params = json['params'];
    var cmdData = params['cmdData'];
    // for (var i in params){
    //     if (params[i].key == 'cmdData') {
    //         cmdData = params[i];
    //     }
    //     ts = params[i].ts;
    // }
    payloadArray = system_string(cmdData.toUpperCase());
    
    return payloadArray
}

function system_string(value) {
        var uint8Array = new Uint8Array(value.length/2);
    var dv = new DataView(uint8Array.buffer, 0);
                var j=0;
    for (var i = 0; i<value.length;  i+=2) {
        dv.setUint8(j++, hex2Value(value[i])*16+hex2Value(value[i+1]));
    }
        return [].slice.call(uint8Array);
}

function hex2Value(v){
    var res;
    switch(v){
    case "A": res = 10;break;
    case "B": res = 11;break;
    case "C": res = 12;break;
    case "D": res = 13;break;
    case "E": res = 14;break;
    case "F": res = 15;break;
    case "0": res = 0;break;
    case "1": res = 1;break;
    case "2": res = 2;break;
    case "3": res = 3;break;
    case "4": res = 4;break;
    case "5": res = 5;break;
    case "6": res = 6;break;
    case "7": res = 7;break;
    case "8": res = 8;break;
    case "9": res = 9;break;
    default: res = 0;break;
    }
    return res;
}


data = {
    method:"SEND_CMD",
    id:"1122334455",
    params:{
        cmdData:"48544D022122"
    }
}
console.info(jsonToRawData(data));
console 命令行工具 X clear

                    
>
console