gpt4 book ai didi

javascript - 如何找出创建类实例时传递的参数数量?

转载 作者:行者123 更新时间:2023-12-02 22:24:49 25 4
gpt4 key购买 nike

我需要犯我的自定义错误。如果参数不是数字并且参数 alength 大于或小于 2,则会发生错误。

class Point {
constructor(x, y) {
this.x = x;
this.y = y;
this.isNum();
}
isNum() {
if(typeof this.x !== 'number' || typeof this.y !== 'number' ) {
throw new Error('point is not a number ')
}
console.log(arguments.length)
}
}

try{
let example = new Point(1,2)
} catch(e){
console.error(e)
}
console.log(example.arguments.length)

我如何知道参数的长度?

这个拼写错误吗?

你能告诉我如何正确解决吗?

如果我写错了问题,我深表歉意。

最佳答案

使用arguments对象

注意: example 是在 try 中使用 let 定义的,无法从作用域外部访问

class Point {
constructor(x, y) {
this.x = x;
this.y = y;
this.arguments = arguments;
this.isNum();
}
isNum() {
if (this.arguments.length != 2) {
throw new Error('you send more arguments')
}
if (typeof this.x !== 'number' || typeof this.y !== 'number') {
throw new Error('point is not a number ')
}
}
}

try {
let example = new Point(1, 2)
console.log(example.arguments.length)
} catch (e) {
console.error(e)
}

关于javascript - 如何找出创建类实例时传递的参数数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59104858/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com