Javascript JS长度小于元素数

Javascript JS长度小于元素数,javascript,arrays,Javascript,Arrays,我有一个长度为20的JS数组,但是.length、forEach和for循环基本上都是11 我尝试计算它的一些方法(从.length开始): 我试着在之后遍历这个数组,当然计数现在是关闭的。为什么说10/11而不是20?在调用console.log()时,Chrome(和Firefox)开发工具会记录日志。对于对象,它记录对象的“摘要版本”。但是,当您展开记录的对象时,展开版本的内容将显示展开时对象的内容 简而言之,在你记录它的时候,它是11。但在扩展日志条目时,它已经是20。在记录日志和扩展日

我有一个长度为20的JS数组,但是.length、forEach和for循环基本上都是11

我尝试计算它的一些方法(从.length开始):

我试着在之后遍历这个数组,当然计数现在是关闭的。为什么说10/11而不是20?

在调用
console.log()时,Chrome(和Firefox)开发工具会记录日志。对于对象,它记录对象的“摘要版本”。但是,当您展开记录的对象时,展开版本的内容将显示展开时对象的内容

简而言之,在你记录它的时候,它是11。但在扩展日志条目时,它已经是20。在记录日志和扩展日志之间,一些代码可能会再添加9项

这里有一个简单的演示。(在实际的浏览器控制台中查看,因为SO代码段序列化了要显示的输出):

const数组=[1,2,3]
//这将显示3
console.log('length:',array.length)
//这将显示3个项目
log('serialized contents',JSON.stringify(array))
//这将显示3个未展开的项目,记录时为3个。
//但这将在扩展后显示12
log('未序列化内容',数组)
//弹出更多的项目

array.push(4,5,6,7,8,9,10,11,12)
我完全不知道你在问什么!请养成一个好习惯,提供一个可运行的代码片段,这将使每个人都更容易理解你的意思。可能会涉及更多的代码。没有人可以帮你,谢谢!这就解释了。我记录了一大堆调试信息,现在我明白了长度问题,我追求的是错误的东西。
    console.log('data length: ' + data.length);
    var myLen = 0;
    myLen = Object.keys(data).length;
    console.log( 'myLen: ' + myLen);
    for (var i = 0, len = 0; i < data.length; i++, data[i] !== undefined && len++);
    console.log('real length: ' + len );
(11) [{…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}]
0: {b_id: "3759", start_date: "2019-06-01", end_date: "2019-06-30", amount: "1800", platform_id_fk: "1", …}
1: {b_id: "3759", start_date: "2019-06-01", end_date: "2019-06-30", amount: "1800", platform_id_fk: "1", …}
2: {b_id: "3759", start_date: "2019-06-01", end_date: "2019-06-30", amount: "1800", platform_id_fk: "1", …}
3: {b_id: "3759", start_date: "2019-06-01", end_date: "2019-06-30", amount: "1800", platform_id_fk: "1", …}
4: {b_id: "3759", start_date: "2019-06-01", end_date: "2019-06-30", amount: "1800", platform_id_fk: "1", …}
5: {b_id: "3759", start_date: "2019-06-01", end_date: "2019-06-30", amount: "1800", platform_id_fk: "1", …}
6: {b_id: "3759", start_date: "2019-06-01", end_date: "2019-06-30", amount: "1800", platform_id_fk: "1", …}
7: {b_id: "3759", start_date: "2019-06-01", end_date: "2019-06-30", amount: "1800", platform_id_fk: "1", …}
8: {b_id: "3759", start_date: "2019-06-01", end_date: "2019-06-30", amount: "1800", platform_id_fk: "1", …}
9: {b_id: "3759", start_date: "2019-06-01", end_date: "2019-06-30", amount: "1800", platform_id_fk: "1", …}
10: {b_id: "3759", start_date: "2019-06-01", end_date: "2019-06-30", amount: "1800", platform_id_fk: "1", …}
11: {amount: "1800", b_id: "3759", campaignCount: 0, campaigns: 1, company_id_fk: "596", …}
12: {amount: "1800", b_id: "3759", campaignCount: 0, campaigns: 1, company_id_fk: "596", …}
13: {amount: "1800", b_id: "3759", campaignCount: 0, campaigns: 1, company_id_fk: "596", …}
14: {amount: "1800", b_id: "3759", campaignCount: 0, campaigns: 1, company_id_fk: "596", …}
15: {amount: "1800", b_id: "3759", campaignCount: 0, campaigns: 1, company_id_fk: "596", …}
16: {amount: "1800", b_id: "3759", campaignCount: 0, campaigns: 1, company_id_fk: "596", …}
17: {amount: "1800", b_id: "3759", campaignCount: 0, campaigns: 1, company_id_fk: "596", …}
18: {amount: "1800", b_id: "3759", campaignCount: 0, campaigns: 1, company_id_fk: "596", …}
19: {amount: "1800", b_id: "3759", campaignCount: 0, campaigns: 1, company_id_fk: "596", …}
length: 20
__proto__: Array(0)