直接用var people = createPeople("X",123,"X");
people.sayHello();
@yenange 我都不好意思回答
function createPeople(name) {
this.name = name; //这里的this指的是createPeople new出来的对象,也就是你下面var p1 = new createPeople("One");的p1,
//这个name值是付给了p1,而你调用的sayHello方法中的this.name并没有值,
}
people.sayHello = function() {
console.info("My name is"+this.name); //这里的this指的是people对象,它没有name属性
}
你可以这样将值传给people对象
function createPeople(name,age) {
var people = new Object();
people.name = name;
people.age = age;
people.sayHello= function() {
console.info("my name is "+this.name+", age is "+this.age);
}
return people;
}
var p1 = new createPeople("One",19);
p1.sayHello();