如何获得JSON对象中的键数?

Met*_*lis 4 javascript jquery json

我正在创建一个库插件,我需要在其中找出普通javascript对象中的元素数量.以下是我希望能够创建图库的方法.

$.Gallery.create($('#galContainer'), {
    'img1.png': 'http://linktosomewhere/',
    'img2.png': 'http://linktosomewhere/',
    'img3.png': 'http://linktosomewhere/',
    ........
}, optionsObj);
Run Code Online (Sandbox Code Playgroud)

这会将图像放入图库,并在单击时显示相应链接.目前我在没有链接的情况下使用第二个参数的数组,我使用images.length获取图像的长度.但是使用上面的符号对我来说是理想的,我需要能够告诉这个对象有多少个键.

我知道这篇文章和其他一些人说你无法获得对象中的元素数量.如果确实如此,您是否有任何关于设置此函数调用的方法的建议,这将是高效且易于使用的?

cas*_*nca 7

您在链接到的另一个问题中看到的代码实际上是唯一的方法.以下是创建函数的方法:

function count(obj) {
  var i = 0;
  for (var x in obj)
    if (obj.hasOwnProperty(x))
      i++;
  return i;
}
Run Code Online (Sandbox Code Playgroud)