Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用JavaScript定义数组_Javascript_Jquery - Fatal编程技术网

用JavaScript定义数组

用JavaScript定义数组,javascript,jquery,Javascript,Jquery,您将如何在JavaScript中定义一个数组(如下所示),并通过搜索country和region来检索值 region['US'] = {'Region 1': 'East', 'Region 2': 'West'} 您需要的是对象,而不是数组。对象具有字符串键,数组仅具有数字键 var region = { US: {'Region 1': 'East', 'Region 2': 'West'}, UK: {'Region 1': 'East', 'Region 2': 'West'

您将如何在JavaScript中定义一个数组(如下所示),并通过搜索country和region来检索值

region['US'] = {'Region 1': 'East', 'Region 2': 'West'}

您需要的是对象,而不是数组。对象具有字符串键,数组仅具有数字键

var region = {
  US: {'Region 1': 'East', 'Region 2': 'West'},
  UK: {'Region 1': 'East', 'Region 2': 'West'}

}
那就用它吧

region['US']


如果我们为国家和地区声明特定类别,这应该有效:

var Region = function(data) {
 var self = this;
 self.name = data.name || "";
}

var Country = function(data) {
 var self = this;
 self.name = data.name || "";
 self.regions = new Array();
}

var countries = {};
countries["US"] = new Country({ "name" : "US" });
countries["US"].regions.push(new Region({ "name" : "Region 1"}));
countries["US"].regions.push(new Region({ "name" : "Region 2"}));

您列出的是一个对象,而不是数组。在JavaScript中,具有字符串键的数组始终是对象。它的行为基本相同。您需要使用JSON和JSON的点表示法来检索数据。@Lix:JavaScript中的所有键都是字符串。。。我只是想说清楚。所有数组都是对象。@斜视如果它是
数组
,则
只是数组中的索引。这就是他所说的。
var Region = function(data) {
 var self = this;
 self.name = data.name || "";
}

var Country = function(data) {
 var self = this;
 self.name = data.name || "";
 self.regions = new Array();
}

var countries = {};
countries["US"] = new Country({ "name" : "US" });
countries["US"].regions.push(new Region({ "name" : "Region 1"}));
countries["US"].regions.push(new Region({ "name" : "Region 2"}));