获取对象的最后一个值Javascript或jQuery
问题描述:
我有一个对象,我试图获取每个键的最后一个值并将其放入另一个对象中。获取对象的最后一个值Javascript或jQuery
var setA = {
'a':'001, 007, 101',
'b':'052, 004, 006, 005',
'c':'003, 002, 001'
}
我想要做的就是在最后的是这样的:
var setB = {
'a':'101',
'b':'005',
'c':'001'
}
我怎么可能做到这一点?
答
为什么不干脆:
var setB = {
'a':setA.a.split(',').pop().trim(),
'b':setA.b.split(',').pop().trim(),
'c':setA.c.split(',').pop().trim()
}
实际上,这需要从setA.a
(依此类推)中的变量返回的值,将该字符串(在,
字符处)拆分为一个数组,并弹出该数组的最后一个值,并将空白从它。
下面从jbabey的回答凸起,当我想起的字符串可以作为字符数组进行处理:
var setA = {
'a': '001, 007, 101',
'b': '052, 004, 006, 005',
'c': '003, 002, 001'
},
setB = {
'a': setA.a.slice(-3),
'b': setA.b.slice(-3),
'c': setA.c.slice(-3)
}
console.log(setB);
参考文献:
+0
+1不错的解决方案。 – undefined 2012-07-13 23:53:04
答
如果你知道你总是希望字符串的最后3个字符,你可以使用substring
var setA = {
'a':'001, 007, 101',
'b':'052, 004, 006, 005',
'c':'003, 002, 001'
}
var setB = {};
for (var item in setA) {
setB[item] = setA[item].substring(setA[item].length-3);
}
答
此代码的伎俩:
var setB={},temp,prop;
for(prop in setA){
temp=setA[prop].split(', ');
temp=temp[temp.length-1];
setB[prop]=temp;
}
这是一个nit,但“setA”中的每个属性都只有一个值。 – Pointy 2012-07-13 23:51:24