var jsonObj="{"textareaTx1":"基右","textareaTx2":"顶置别想"}"
for(var i=1 i<=JSONLength(jsonObj)i++){
var recordDepict=jsonObj["textareaTx"+i]//这个就是你想要的获取方式了
}
function JSONLength(obj) {
var size = 0, key
for (key in obj) {
if (obj.hasOwnProperty(key)) size++
}
return size
}
我刚好也需要这个功能,耐何搜索技巧不好,百度找了好一会,应该搜索关键词“动态key获取jsonObj值”,回答不是为了最佳答案,是为了更好服务他人
var aa=JSONdog.dogli
改为
var aa=JSONdog[dogli]
补充说一下:这是对象属性的两种调用方法,一种是 obj.attr ,另一种是 obj["attr"],而这第二种方式属性名用的是字符串格式,这样就能用变量来代替它了。
//检测是不是已存在同样的idfunction test(a,b){
for(var i=0i < b.lengthi++){
if(a.get[0].id == b[i].get[0].id){
b[i].get.push(a.get[0])
return true
}
}
return false
}
//将同样的id放在同一类中
function fun(result,rest){
if(rest.length == 0){
return result
}
if(test(rest[0],result)){
fun(result,rest.slice(1))
}else{
result.push(rest[0])
fun(result,rest.slice(1))
}
}
//使用
var b = a.map(function(item){
return {"flag":item.flag,"get":[{"id":item.id,"text":item.text}]}
})
result = fun([],b)