function snakeCaseToCamelCase(input){
let inputStr = JSON.stringify(input);
var arr = new Array(inputStr.length);
let isKey = false;
let count = 0;// key value 必须配对
let skipCount = 0;
for(var i=0,j=inputStr.length; i<j; i++){
if(!isKey){
arr.push(inputStr[i]);
if(inputStr[i]==='\\'){
i++;
arr.push(inputStr[i]);
}
else if(inputStr[i]==='"'){
if(skipCount){
skipCount--;
}
else{
count++;
}
isKey = count%2===1;
}
continue;
}
if(inputStr[i] === '_'){
i++;
arr.push(inputStr[i].toUpperCase());
continue;
}
else if(inputStr[i]==='\\'){
arr.push(inputStr[i]);
arr.push(inputStr[++i]);
continue;
}
else if(inputStr[i]==='"'){
isKey = false;
if(inputStr[i+2]==='"'){
skipCount = 2;
}
else{
skipCount = 0;
}
count++;
}
arr.push(inputStr[i]);
}
return JSON.parse(arr.join(''));
}