如何创建一个确定性的Javascript HTML 颜色选择器,它给出需要多少颜色的参数返回一组 HTML 十六进制颜色代码,即:
function createColours(numColours) {
return [/* colours array of size numColours */]
}
颜色本身可以随机选择/生成,但该方法必须保证在调用之间选择的颜色始终相同,并且始终以相同的顺序排列。
例如,如果函数决定的颜色系列以以下 8 开头:
"#47092E", "#CC2A43", "#00C66B", "#BC1300", "#667E00", "#795800", "#FFD245", "#6EFFAD", etc, etc
该函数将在客户端上的单独方法调用中以以下一致的响应运行
["#47092E", "#CC2A43"] == createColours(2);
["#47092E", "#CC2A43", "#00C66B", "#BC1300", "#667E00"] == createColours(5);
["#47092E"] == createColours(1);
["#47092E", "#CC2A43", "#00C66B", "#BC1300", "#667E00", "#795800", "#FFD245", "#6EFFAD", #and 49 others#] == createColours(57);
注意:颜色没有预先定义为变量;可能会要求该方法提供 345 种颜色,所有这些都需要通过任何合适的方式生成。
要解决的问题是 -首先也是最重要的 - 你将如何在方法中创建一种能力来生成 n 个 HEX 颜色值,每次都一致地相同,同时保留序列