fedono / fe-questions

1 stars 0 forks source link

36. 随机生成rgb的值 #37

Open fedono opened 3 years ago

fedono commented 3 years ago

要考你这道题,是肯定不会让你先写出[0,...9, a, ... , f] 然后每次从这里获取一位然后拼接的,如果这道题满分十分,这样写就是两分。

这里要用到toString,而且还是NumbertoString 方法

function generateRGB() {
    return '#' + Array.from({length: 6}).map(() => {
        // 要知道Number 的 toString 的方法,才会转换进制,如果是 String(14).toString(16),输出的还是14,
        return Math.ceil(Math.random() * 16).toString(16);
        // 再补充一个知识点,parseInt(xx, 16) 是十六进制转换成十进制,不是转换成十六进制
        // MDN文档说明:返回值是以第一个参数作为指定基数 radix 的转换后的十进制整数
    }).join('');
}

let result = generateRGB();
console.log(result);