关于Object遍历的一些事

2016-05-26 13:44:32

    最近一个朋友问我 如何遍历到一个位置属性的对象的数据呢  他的需求是这样的

var object = {a: 1, b: 2, d: 3, e: 4, f: 5, g: 6}
假设有这么一个数组
你并不知道有哪些项
你需要找出来前三项的内容
细想一下
用for(key in objec)
可以遍历这个objectfor(
var key
in
object
)
{
    console.log(object(key))
}
即可遍历出来全部的对象
得到启发
既然有了一下的方法var
obj = {};
var i = 0
for (var p in object) {
    if (i < 12) {
        obj[p] = object[p];
    } else {
        break;
    }
    i++;
}
归纳成js函数function
objlet(ret, j)
{
    var obj = {};
    var i = 0;
    for (var p in ret) {
        if (i < j) {
            obj[p] = ret[p];
        } else {
            break;
        }
        i++;
    }
    return obj;
}
当然这个并不完美
如果想取中间的一段呢
function objlet2(ret, j, k) {
    var obj = {};
    var i = 0;
    for (var p in ret) {
        console.log(i, j)
        if (i >= j) {
            if (i <= k) {
                obj[p] = ret[p];
            } else {
                break;
            }
        }
        i++;
    }
    return obj;
}
这样完美的完成了需求
测试下objlet2(object, 1, 2)
结果
{
    b: 2, d: 3
}


你打算打赏多少钱呢?

打赏
(微信扫一扫)