从Javascript对象中随机选择属性

9 浏览
0 Comments

从Javascript对象中随机选择属性

假设您有一个JavaScript对象,如下所示:

{cat: 'meow', dog: 'woof', snake: 'hiss'}

有没有一种更简洁的方法从对象中选择一个随机属性,而不是我想出的这种冗长的方式:

function pickRandomProperty(obj) {
    var prop, len = 0, randomPos, pos = 0;
    for (prop in obj) {
        if (obj.hasOwnProperty(prop)) {
            len += 1;
        }
    }
    randomPos = Math.floor(Math.random() * len);
    for (prop in obj) {
        if (obj.hasOwnProperty(prop)) {
            if (pos === randomPos) {
                return prop;
            }
            pos += 1;
        }
    }       
}

可以简洁地从对象中选择一个随机属性吗?

0