我想重写一个方法,并将不同的参数类型传递给它:
class Base {
public myMethod(myString: string): undefined {
return;
}
}
class Child extends Base {
public myMethod(myNumber: number): undefined {
return super.myMethod(String(myNumber));
}
}
Run Code Online (Sandbox Code Playgroud)
但这会产生打字错误:
类型'Child'的属性'myMethod'不能分配给基本类型'Base'的相同属性。类型'(myNumber:number)=> undefined'不能分配给类型'(myString:string)=> undefined'。参数“ myNumber”和“ myString”的类型不兼容。“字符串”类型不可分配给“数字”类型。
有没有一种方法而不会产生打字稿错误?
我有以下代码
const integerDivide = (a, b) => {
return [Math.floor(a / b), a % b]
}
let sec = 555003,
min, hr, day;
[min, sec] = integerDivide(sec, 60)
console.log(`sec: ${sec}`)
console.log(`min: ${min}`)
[hr, min] = integerDivide(min, 60)
console.log(`hr: ${hr}`)Run Code Online (Sandbox Code Playgroud)
此代码给出以下错误
Uncaught TypeError: Cannot set property '9250' of undefined
Run Code Online (Sandbox Code Playgroud)
我不明白为什么这段代码不起作用。任何解释或更正将不胜感激。下面是代码笔链接 https://codepen.io/devbkhadka/pen/ExyyEWE?editors=1111