Javascript 构造函数或数组或for循环中出错?

Javascript 构造函数或数组或for循环中出错?,javascript,Javascript,代码如下: // The Person constructor function Person(name, age) { this.name = name; this.age = age; } // Now we can make an array of peoples var family = new Array(); family[0] = Person("alice", 40); family[1] = Person("bob", 42); family[2] = Per

代码如下:

// The Person constructor
function Person(name, age) {
    this.name = name;
    this.age = age;
}

// Now we can make an array of peoples
var family = new Array();
family[0] = Person("alice", 40);
family[1] = Person("bob", 42);
family[2] = Person("michelle", 8);
family[3] = Person("timmy", 6);

// loop through our new array
for ( i=0; i < family.length; i++; ) {
    console.log(family[i].name)
};
但结果是:

未捕获类型错误:无法读取未定义(匿名函数)的属性“名称”


为每个添加的
人员添加
新的
关键字,并删除额外的
for
-循环中的
(在
i++
之后)

//现在我们可以创建一个人员数组
var family=新数组();
家庭[0]=新人(“爱丽丝”,40岁);
家庭[1]=新人(“鲍勃”,42岁);
家庭[2]=新人(“米歇尔”,8岁);
家庭[3]=新人(“蒂米”,6);
//循环浏览我们的新阵列
对于(i=0;i
现在将记录:

爱丽丝
鲍勃
米歇尔
提米

//我们的个人构造函数
职能人员(姓名、年龄){
this.name=名称;
这个。年龄=年龄;
}
//现在我们可以做一组人了
var family=新数组();
家庭[0]=新人(“爱丽丝”,40岁);
家庭[1]=新人(“鲍勃”,42岁);
家庭[2]=新人(“米歇尔”,8岁);
家庭[3]=新人(“蒂米”,6);
控制台信息(家庭);
//循环浏览我们的新阵列
对于(i=0;i
我做了这样的事情:

// Our Person constructor
var Person = function(name,age) {
    this.age = age;
    this.name = name;
};

// Now we can make an array of people
var family = new Array();
    family[0] = new Person("alice",40);
    family[1] = new Person("bob", 42);
    family[2] = new Person("michelle",8);
    family[3] = new Person("timmy",6);

// loop through our new array
for (var famloop in family) {
    console.log(family[famloop].name);
}

这是正确的,但您应该添加一些关于更改内容和更改原因的注释。
// Now we can make an array of people
var family = new Array();
family[0] = new Person("alice", 40);
family[1] = new Person("bob", 42);
family[2] = new Person("michelle", 8);
family[3] = new Person("timmy", 6);

// loop through our new array
for ( i=0; i < family.length; i++ ) {
    console.log(family[i].name);       // Also, added a semicolon here. Not required, but it's good practice to close your lines.
};
// Our Person constructor
function Person(name, age) {
    this.name = name;
    this.age = age;
}

// Now we can make an array of people
var family = new Array();
family[0] = new Person("alice", 40);
family[1] = new Person("bob", 42);
family[2] = new Person("michelle", 8);
family[3] = new Person("timmy", 6);

console.info(family);
// loop through our new array
for ( i=0; i < family.length; i++ ) {
    console.log(family[i].name)
};
// Our Person constructor
var Person = function(name,age) {
    this.age = age;
    this.name = name;
};

// Now we can make an array of people
var family = new Array();
    family[0] = new Person("alice",40);
    family[1] = new Person("bob", 42);
    family[2] = new Person("michelle",8);
    family[3] = new Person("timmy",6);

// loop through our new array
for (var famloop in family) {
    console.log(family[famloop].name);
}