数组作为map返回错误的长度

use*_*898 1 javascript arrays

我读过那个数组可以是map,所以为什么它会给出错误的结果呢?是否有简单的本机方式在JavaScript中使用map然后获取它的长度?

var f = [];
f["1_f_1"] = "1";
f["2_f_2"] = "2";
f["3_f_3"] = "3";

alert(f.length);
Run Code Online (Sandbox Code Playgroud)

印刷品: 0

https://jsfiddle.net/fd6s1z0j/

Pra*_*lan 5

JavaScript不支持关联数组,因此在Object.keys()方法的帮助下使用对象并通过属性名称数组大小获取大小.

// initialize as object
var f = {};

// define properties
f["1_f_1"] = "1";
f["2_f_2"] = "2";
f["3_f_3"] = "3";

// get object property name array and get length
alert(Object.keys(f).length);
Run Code Online (Sandbox Code Playgroud)