我是JS的新手,我不明白为什么这段代码不工作?
我想在每次加载或刷新页面时调用一个类。为了测试这一点,我在构造函数中添加了initialises方法。
不幸的是,我得到这个错误,我不明白为什么:
script.js:16 Uncaught TypeError: SinkShip is not a function
at window.onload
这是目前为止我的。js代码。
class SinkShip{
constructor(){
this.initialies
}
initialies(){
alert('it works');
}
}
window.onload = (event)=>{
console.log('HIIIII');
let SinkShip;
SinkShip = new SinkShip();
};
您正在"覆盖"你的类SinkShip和变量SinkShip
用let sinkShip
代替let SinkShip
class SinkShip {
constructor() {
this.initialies();
}
initialies() {
alert("it works");
}
}
window.onload = (event) => {
console.log("HIIIII");
let sinkShip;
sinkShip = new SinkShip();
};
在函数的局部作用域中,SinkShip
指的是局部变量而不是类。为变量使用不同的名称,即小写的sinkShip
:
class SinkShip {
constructor() {
this.initialies();
}
initialies() {
alert('it works');
}
}
window.onload = (event) => {
console.log('HIIIII');
let sinkShip = new SinkShip();
};