用js写个功能要求如下- 校验传入参数类型,如果不是布尔值,返回`"参数错误"`。 - 该函数接收一个布尔类型参数,表示颜色的格式是十六进制还是rgb格式 - 如果参数传递的是true或者无参数,则输出一个随机十六进制的颜色 - 如果参数传递的是false,则输出一个随机rgb的颜色
时间: 2024-04-13 22:30:54 浏览: 182
你可以使用以下JavaScript代码来实现这个功能:
```javascript
function getRandomColor(isHex = true) {
if (typeof isHex !== 'boolean') {
return "参数错误";
}
if (isHex || typeof isHex === 'undefined') {
// 生成随机十六进制颜色
const hexColor = Math.floor(Math.random() * 16777215).toString(16);
return "#" + hexColor;
} else {
// 生成随机rgb颜色
const rgbColor = `rgb(${Math.floor(Math.random() * 256)}, ${Math.floor(Math.random() * 256)}, ${Math.floor(Math.random() * 256)})`;
return rgbColor;
}
}
// 测试
console.log(getRandomColor()); // 输出随机十六进制颜色
console.log(getRandomColor(true)); // 输出随机十六进制颜色
console.log(getRandomColor(false)); // 输出随机rgb颜色
console.log(getRandomColor("invalid")); // 输出"参数错误"
```
这段代码定义了一个名为`getRandomColor`的函数,它接收一个布尔类型的参数`isHex`,用于指定颜色的格式。根据参数的值,函数会返回随机的十六进制颜色或者随机的rgb颜色。如果参数不是布尔值,函数会返回字符串`"参数错误"`。
你可以通过调用`getRandomColor()`来获取一个随机十六进制颜色,或者通过`getRandomColor(false)`来获取一个随机rgb颜色。如果传递的参数无效,如`getRandomColor("invalid")`,则会返回字符串`"参数错误"`。
阅读全文