Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.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_Arrays - Fatal编程技术网

Javascript 改进此阵列数据模型

Javascript 改进此阵列数据模型,javascript,arrays,Javascript,Arrays,我目前正在制作一个在数组中标记cordenades的小脚本: var paises = ['spain','australia']; var leftX = ['270','575']; var topY = ['60','220']; 当我需要访问它们时: clase = 'spain'; var left_ = leftX[paises.indexOf(clase)]; var top_ = topY[paises.indexOf(clase)]; 这可能会让我的同事感到困惑。

我目前正在制作一个在数组中标记cordenades的小脚本:

var paises = ['spain','australia'];
var leftX   = ['270','575'];
var topY    = ['60','220'];
当我需要访问它们时:

clase = 'spain';
var left_ = leftX[paises.indexOf(clase)];
var top_ = topY[paises.indexOf(clase)];

这可能会让我的同事感到困惑。如何使其更简单?

我会在对象结构中执行:

var paises = {
    spain: { leftX: 270, topY: 60 },
    // etc
}
这样就更容易访问,而且您不必担心
.indexOf()
支持(这在旧版IE中不可用):


我会在对象结构中执行此操作:

var paises = {
    spain: { leftX: 270, topY: 60 },
    // etc
}
这样就更容易访问,而且您不必担心
.indexOf()
支持(这在旧版IE中不可用):


我会使用javascript对象

var paises =  { spain: {leftX: 270, topY: 60}, australia: { leftX: 575, topY: 220};

paises.spain.leftX; // 270
// or
paises["spain"].leftX; // 270
// or
paises['spain']['leftX']; // 270

因此,在传统的JavaScript庄园中,有许多访问数据的选项

我会使用javascript对象

var paises =  { spain: {leftX: 270, topY: 60}, australia: { leftX: 575, topY: 220};

paises.spain.leftX; // 270
// or
paises["spain"].leftX; // 270
// or
paises['spain']['leftX']; // 270
var places = {
    "spain":  {
         leftx: '270',
         topY: '60'
    },
    "australia":  {
         leftx: '575',
         topY: '220'
    }
}

//Then:
clase = 'spain';
var left_ = places[clase].leftX;
var top_ = places[clase].topY;

因此,在传统的JavaScript庄园中,有许多访问数据的选项

你在一分钟内得到了三个完全相同的答案。我认为你的前进方向非常明确:)。你在大约一分钟内得到了三个相同的答案。我认为你的前进道路非常明确:)。
var places = {
    "spain":  {
         leftx: '270',
         topY: '60'
    },
    "australia":  {
         leftx: '575',
         topY: '220'
    }
}

//Then:
clase = 'spain';
var left_ = places[clase].leftX;
var top_ = places[clase].topY;