javascript - JS : how to get FIrst N elements of associative array

标签 javascript

我有 J Stsrutcure:

var rooms={};
rooms["room1"] = 10;
rooms["room2"] = 25;
rooms["room3"] = 15;
rooms["room4"] = 1;
rooms["room5"] = 10;
rooms["room6"] = 181;
rooms["somrthing"] = value;

我正在尝试编写一个函数来检索前 N 个元素

例如:

function getElements(limit) {
..
}

如果 limit = 3 将返回一个对象,例如:

Object 
{room1: 10, room2: 25, room3: 15}

(前 3 个元素:我不需要排序!)

最佳答案

function getTopElements(limit) {
    var newRooms = {};
    var i = 0;
    for(r in rooms) {
        if(i < limit) {
            newRooms[r] = rooms[r];
            i++;
        }
        else
            return newRooms;
    }
    return newRooms;
}

jsfiddle DEMO

关于javascript - JS : how to get FIrst N elements of associative array,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30132523/

相关文章:

javascript - 如何在 React Native 中将输入字段添加到列表中?

javascript - react 是否有可能从另一个 child 身上激发一个 child 身上实现的功能?

javascript - 在 react native 的文本框中显示日期选择器

javascript - 图像在 IE8 中用 Fancybox 溢出它们的容器

javascript - NodeJS SetImmediate 和回调函数

javascript - 如何在 webgl 中从前/左/上向量创建投影矩阵

javascript - 使用更少的缓存破坏静态图像

嵌套在生成器中的函数产生的 Javascript

javascript - Order By (alias) then Order by second sequelize

javascript - 如何在客户端不弹出打印对话框的情况下打印收据