Javascript - 函数,缺少参数
Javascript - Functions, missing argument
这里是小程序员,刚开始学习函数。我创建了一个函数来计算矩形的面积,只要提供两个参数,它就可以工作。如果只提供一个参数,我希望我的代码假设形状是正方形(因此长度和宽度相等)。我一直在尝试提出一个条件,但不知道如何说“如果只有一个参数,则长度 === 宽度”。任何指点表示赞赏!
function area(length, width) {
let rectangleArea = Number(length) * Number(width);
return rectangleArea;
}
console.log(area(10, 5));
一个选项是对 width
参数使用 default function parameters,如果未通过
,则将其设置为 length
function area(length, width = length) {
let rectangleArea = length * width;
return rectangleArea;
}
console.log(area(10, 5));
console.log(area(10));
默认函数参数是最近的一个特性。如果令人困惑,您可以检查 width
参数是否为 undefined
并将其设置为 length
function area(length, width) {
if (typeof width === "undefined")
width = length;
let rectangleArea = length * width;
return rectangleArea;
}
console.log(area(10, 5));
console.log(area(10))
此外,这里不需要 Number()
包装器。你已经在传递数字了。即使您像 area("10", "5")
一样将字符串作为参数传递,它们也会被强制转换为数字并相乘。
您可以使用默认参数width = length
。如果 width
的值没有传递给函数,length
的值将被赋值给 width
.
function area(length, width = length) {
let rectangleArea = Number(length) * Number(width);
return rectangleArea;
}
console.log(area(10, 5));
console.log(area(10));
console.log(area(5));
这里是小程序员,刚开始学习函数。我创建了一个函数来计算矩形的面积,只要提供两个参数,它就可以工作。如果只提供一个参数,我希望我的代码假设形状是正方形(因此长度和宽度相等)。我一直在尝试提出一个条件,但不知道如何说“如果只有一个参数,则长度 === 宽度”。任何指点表示赞赏!
function area(length, width) {
let rectangleArea = Number(length) * Number(width);
return rectangleArea;
}
console.log(area(10, 5));
一个选项是对 width
参数使用 default function parameters,如果未通过
length
function area(length, width = length) {
let rectangleArea = length * width;
return rectangleArea;
}
console.log(area(10, 5));
console.log(area(10));
默认函数参数是最近的一个特性。如果令人困惑,您可以检查 width
参数是否为 undefined
并将其设置为 length
function area(length, width) {
if (typeof width === "undefined")
width = length;
let rectangleArea = length * width;
return rectangleArea;
}
console.log(area(10, 5));
console.log(area(10))
此外,这里不需要 Number()
包装器。你已经在传递数字了。即使您像 area("10", "5")
一样将字符串作为参数传递,它们也会被强制转换为数字并相乘。
您可以使用默认参数width = length
。如果 width
的值没有传递给函数,length
的值将被赋值给 width
.
function area(length, width = length) {
let rectangleArea = Number(length) * Number(width);
return rectangleArea;
}
console.log(area(10, 5));
console.log(area(10));
console.log(area(5));