字符串转JSON

要求快速实现以下要求:

var str = 'a>b and b<c and c=d'

// TODO: 将 `str` 字符串 转成 [{key: 'a', symbol: '>', value: 'b'}] 格式
阅读 1.7k
2 个回答
var str = 'a>b and b<c and c=d';
var expressions = str.split('and');
var regExp = /[+-\\*%/><=]/;
var expArray = [];
for(var i=0;i<expressions.length;i++){
    var expression = expressions[i];
    var keyValue = expression.split(regExp);
    var item = {};
    item.key = keyValue[0];
    item.value = keyValue[1];
    item.symbol = expression.charAt(expression.search(regExp));
    expArray.push(item);
}
console.log(JSON.stringify(expArray));
console.log(str.split('and').map(v => v.trim()).reduce((pre, item) => {
    const reg = /(.*)([>=<])(.*)/g;
    const [t, name, symbol, value] = reg.exec(item);
    return [...pre, {name, symbol, value}];
},[]));
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题