Javascript 数组中的数组

Javascript 数组中的数组,javascript,arrays,Javascript,Arrays,我想在数组中创建一个数组 它将包含一些不同位置的敌人。我试着这样写: var enemies = [ position = { x: 0, y: 0 } ]; enemies.length = 6; 这似乎是可行的,然而,我不知道写什么,当我想叫它敌人[1]。position.x根本不起作用。有线索吗?你可能想要一组敌人的目标。比如: var enemies = [ { position: { x: 0, y: 0 } }, {

我想在数组中创建一个数组

它将包含一些不同位置的敌人。我试着这样写:

var enemies = [
    position = {
        x: 0,
        y: 0
    }
];
enemies.length = 6;

这似乎是可行的,然而,我不知道写什么,当我想叫它<代码>敌人[1]。position.x根本不起作用。有线索吗?

你可能想要一组敌人的目标。比如:

var enemies = [
    { position: { x: 0, y: 0 } },
    { position: { x: 0, y: 0 } },
    { position: { x: 0, y: 0 } }
];

var firstEnemy = enemies[0];

firstEnemy.position.x; // 0

var totalEnemies = enemies.length; // 3

你想做的是

var enemies =  [
    {
        position: { x: 0, y: 0 }
    }
];

enemies[0].position.x;
数组索引从
0开始

另外,让我们来分析一下为什么代码没有抛出错误,以及它到底是怎么做的

您正在声明一个名为
的数组
,声明该数组时,您正在定义一个名为
位置
的全局变量(并返回其值)


执行后,
敌人
看起来像这样
[{x:0,y:0}]

您的第一个元素将是敌人[0]您的“数组”是无效语法。
var-offers=[{x:0,y:0},{x:5,y:5},{x:10,y:10}]然后只需参考敌人[index].x
@Xufox这不是无效的,他只是在创建一个全局(
位置
)。可能重复感谢,@nikhil。完全没有注意到这一点。