Javascript 获取对象内部数组的长度

Javascript 获取对象内部数组的长度,javascript,Javascript,我在javascript中有以下对象: objectX是一个 Object {names : Array[14]} 我试图得到这个的长度,但是当我使用objectX.length时它返回undefined 我正在chrome调试器中尝试,谷歌搜索,任何人都可以很快让我知道plz object.names.length 或 从输出来看,属性名似乎是“name”。请参阅控制台输出中的差异: > console.log({names: []}); Object {names: Array[0

我在javascript中有以下对象:

objectX是一个

Object {names : Array[14]}
我试图得到这个的长度,但是当我使用objectX.length时它返回undefined

我正在chrome调试器中尝试,谷歌搜索,任何人都可以很快让我知道plz

object.names.length


从输出来看,属性名似乎是“name”。请参阅控制台输出中的差异:

> console.log({names: []});
Object {names: Array[0]}

> console.log({'names ': []});
Object {names : Array[0]}      // <- this looks like what you have
//           ^ note the space

但是我建议修改属性名称,这样您就可以使用obj.name.length了。

修改对象符号:

var obj = {name:Array(14)};
alert(obj.name.length);

var obj = {name : [1, 2, 3, 4]};
alert(obj.name.length);

你想知道Object中属性的数量,还是Object.names的长度?names@benmse的长度答案已经发布了,那么.objectX | objectX?如果我使用objectX.names,当你的对象定义与你给出的代码不同时,它会返回Undefinedt。您需要用您正在使用的变量名替换对象。。。也许objectx.names.lengthOkay如果我使用Object.keysobjectx.length,这将返回1。但我想知道名字的长度。上面说是chromethankyou的一个数组,我只是没想到!grrrr在过去的20分钟里连看都没看!下次你知道;对象{names:Array[14]}是Chrome控制台中的输出。这实际上不是JS代码。@FelixKling好吧,我误解了。虽然我认为属性名中的空格无效,但可以使用任何字符串作为属性名。但是,如果属性不是有效的标识符,则不能使用点符号a.b访问它,必须使用括号符号a['b'].@FelixKling。今天我学到了一些新东西,谢谢!
obj['names '].length
var obj = {name:Array(14)};
alert(obj.name.length);

var obj = {name : [1, 2, 3, 4]};
alert(obj.name.length);