Javascript Jquery每个函数不适用于字符串索引数组

Javascript Jquery每个函数不适用于字符串索引数组,javascript,jquery,arrays,iteration,Javascript,Jquery,Arrays,Iteration,我无法让$.each()jquery函数处理字符串索引数组,你知道哪里不对吗 示例@JSFiddle--> 代码: 字符串索引数组(又称关联数组)是对象,而不是数组。 数组的索引不能超过number(它甚至可以是Math.PI,因为它是一个数字)。 解决方案是将secondArray声明为对象: var secondArray = {};// or var secondArray = new Object(); 您可以看到。一个元素总是由一个表示元素位置的整数索引 您正在寻找一个可以通过括号

我无法让$.each()jquery函数处理字符串索引数组,你知道哪里不对吗

示例@JSFiddle-->

代码:

字符串索引数组(又称关联数组)是对象,而不是数组。
数组的索引不能超过number(它甚至可以是Math.PI,因为它是一个数字)。
解决方案是将secondArray声明为对象:

var secondArray = {};// or var secondArray = new Object();
您可以看到。

一个元素总是由一个表示元素位置的整数索引

您正在寻找一个可以通过括号符号访问其属性的:

var obj = {};

obj['first'] = 'foo';
obj['second'] = 'bar';

document.writeln("Second Array:\n<ul>");
$.each(obj, function(key, value)
{
    document.writeln('<li>[' + key + ']: ' + value + "</li>\n");
});
document.writeln("</ul>\n");
var obj={};
obj['first']='foo';
obj['second']='bar';
document.writeln(“第二个数组:\n
    ”); $。每个(对象、功能(键、值) { document.writeln(“
  • [”+key+”]:“+value+”
  • \n”); }); 书面文件(“
\n”);
在原始代码中,
$。由于未向数组添加任何元素,因此从未输入每个
块。您确实在该数组上定义了属性
第一个
第二个
,并为它们赋值


示例:

它实际上是一个对象,而不是arrayA有趣的是,当您使用
var obj=[]错误地启动此脚本时而不是
var obj={},您可以console.log?阵列?长度为0但具有索引内容,但不能作为带有
$的贯穿对象循环。each()
。想知道我真正创建了什么Instance。
var secondArray = {};// or var secondArray = new Object();
var obj = {};

obj['first'] = 'foo';
obj['second'] = 'bar';

document.writeln("Second Array:\n<ul>");
$.each(obj, function(key, value)
{
    document.writeln('<li>[' + key + ']: ' + value + "</li>\n");
});
document.writeln("</ul>\n");