请帮帮我,我有错误" TypeError:sally未定义&#34 ;; 我不明白为什么。
function Person(name,age) {
this.name = name;
this.age = age;
this.species = "Homo Sapiens";
};
var sally = Person("Sally Bowles", 39);
var holden = Person("Holden Bowles", 16);
console.log("sally's species is " + sally.species + " and she is " +
sally.age);
console.log("holden's species is " + holden.species + " and he is " +
holden.age);
答案 0 :(得分:3)
使用pd.read_sql(query1, cnxn, params=[testid])
运算符:
new
答案 1 :(得分:2)
要创建新对象,您必须使用 new 运算符
调用构造函数objectName = new objectType(param1 [,param2] ...[,paramN])
有关新运营商的详细信息,请参阅MDN new operator。
在您当前的实现中调用:
var sally = Person("Sally Bowles", 39);
执行Person构造函数中的 this
将是窗口对象(应该注意this
将是定义了上下文函数的对象,我假设它是窗口对象)
因此,您必须先添加 new 运算符,然后调用构造函数来传递所需的上下文并在构造函数中获得有效的this
:
var sally = new Person("Sally Bowles", 39);
答案 2 :(得分:0)
如果您没有Person(…)
前缀为new
,则会调用该函数并将其返回值分配给sally
。在您的情况下,该函数不返回任何内容(undefined
),因此sally
和holden
都设置为undefined
。
您想要的是使用new
关键字创建对象:
var sally = new Person("Sally Bowles", 39);
答案 3 :(得分:-1)
var sally = new Person("Sally Bowles", 39);
var holden = new Person("Holden Bowles", 16);