做项目的时候看到的一个设计,没有深究后端实现,有空验证一下,粗浅的想了一下,这样设计中间的缓存极大扩展了储存空间,防止了KEY冲突,对前端也比较友好。
即使接RDBMS,也比较容易拆分,赞。
看到的越多,就越感觉自己知道的太少,学到的越多,就越对技术产生渴望,或许这也是一种贪婪吧。
var key = ';12304035:48072;122216431:27023;1627207:28341;5919063:6536025;';
var keyArr = key.split(';').slice(1, -1);
var tmpArr = null,
order = [],
value = [],
ret = [''],
index = 0;
for (var i = 0, j = keyArr.length; i < j; i++) {
tmpArr = keyArr[i].split(':');
order[i] = tmpArr[0];
value[tmpArr[0]] = tmpArr[1];
}
order = order.sort(function(a, b) {
return a - b
});
for (i = 0, j = order.length; i < j; i++) {
index = keyArr.indexOf(order[i] + ':' + value[order[i]]);
ret.push(keyArr[index]);
}
ret.push('');
ret = ret.join(';');
console.log(ret);