Javascript 为每个数组设置随机颜色
我在这个数组中循环,我希望每个数组对象都得到一个随机颜色,但它一直在getRandomColor()后面添加I,而不是添加到变量中 所以它的结果就像是#0A60860+i 为什么呢 我的app.jsJavascript 为每个数组设置随机颜色,javascript,jquery,arrays,Javascript,Jquery,Arrays,我在这个数组中循环,我希望每个数组对象都得到一个随机颜色,但它一直在getRandomColor()后面添加I,而不是添加到变量中 所以它的结果就像是#0A60860+i 为什么呢 我的app.js function getRandomColor() { return "#" + Math.random().toString(16).slice(2,8); } let randomcolor = getRandomColor() let randomcolor0 = getRandomCol
function getRandomColor() {
return "#" + Math.random().toString(16).slice(2,8);
}
let randomcolor = getRandomColor()
let randomcolor0 = getRandomColor()
let randomcolor1 = getRandomColor()
let randomcolor2 = getRandomColor()
let randomcolor3 = getRandomColor()
let randomcolor4 = getRandomColor()
let randomcolor5 = getRandomColor()
let randomcolor6 = getRandomColor()
let randomcolor7 = getRandomColor()
let randomcolor8 = getRandomColor()
let randomcolor9 = getRandomColor()
let randomcolor10 = getRandomColor()
var items = [{id: 24550986,username: "addwell",matchmaking_group_id: 5378563},{id: 30168682,username: "ekkelito",matchmaking_group_id: 5378563},{id: 41526903,username: "dkMrGOD",matchmaking_group_id: 5373230},{id: 87892435,username: "FluffyBunny",matchmaking_group_id: 5373230},{id: 115472481,username: "hinter",matchmaking_group_id: 5378563},{id: 290200108,username: "Jonatan",matchmaking_group_id: 5376993},{id: 296745880,username: "Joy",matchmaking_group_id: 5376993},{id: 352928851,username: "DiktatorN",matchmaking_group_id: 5376993},{id: 932540677,username: "MIKEEEEEEY",matchmaking_group_id: 5378560},{id: 1030322875,username: "fknbr0r",matchmaking_group_id: 5377517}],
keys = { matchmaking_group_id: 'sections', username: 'items' }, // or more if required
result = [],
temp = { _: result };
items.forEach(function (object) {
Object.keys(keys).reduce(function (level, key) {
if (!level[object[key]]) {
level[object[key]] = { _: [] };
level._.push({ [key]: object[key], [keys[key]]: level[object[key]]._ });
}
return level[object[key]];
}, temp)._.push({ title: object.title, description: object.description });
});
var arrayLength = result.length;
for (var i = 0; i < arrayLength; i++) {
console.log(result[i]);
console.log(i)
randomcolor = randomcolor + i;
var arrayLengthsections = result[i].sections.length;
for (var ii = 0; ii < arrayLengthsections; ii++) {
console.log(result[i].sections[ii].username)
$( `span:contains('${result[i].sections[ii].username}')` ).css("border", '1px solid ' + randomcolor)
console.log(randomcolor)
}
}
函数getRandomColor(){
返回“#”+Math.random().toString(16).slice(2,8);
}
让randomcolor=getRandomColor()
让randomcolor0=getRandomColor()
让randomcolor1=getRandomColor()
让randomcolor2=getRandomColor()
让randomcolor3=getRandomColor()
让randomcolor4=getRandomColor()
让randomcolor5=getRandomColor()
让randomcolor6=getRandomColor()
让randomcolor7=getRandomColor()
让randomcolor8=getRandomColor()
让randomcolor9=getRandomColor()
让randomcolor10=getRandomColor()
var items=[{id:24550986,用户名:“addwell”,配对组id:5378563},{id:30168682,用户名:“ekkelito”,配对组id:5378563},{id:41526903,用户名:“dkmrogod”,配对组id:5373230},{id:87892435,用户名:“FluffyBunny”,配对组id:5373230},{id:115472481,用户名:“hinter”,配对组id:53783},{id:290200108,用户名:“Jonatan”,婚介组id:5376993},{id:296745880,用户名:“Joy”,婚介组id:5376993},{id:352928851,用户名:“DiktatorN”,婚介组id:5376993},{id:932540677,用户名:“MIKEEEEEEY”,婚介组id:5378560},{id:0322875,用户名:“fknbr0r”,婚介组id:53777},
key={matchmaking\u group\u id:'sections',username:'items'},//或更多(如果需要)
结果=[],
temp={{结果};
items.forEach(函数(对象){
对象。键(键)。减少(功能(级别,键){
如果(!级别[对象[键]]){
级别[对象[键]]={{}:[]};
level.u.push({[key]:对象[key],[keys[key]]:level[object[key]].});
}
返回级别[对象[键];
}.push({title:object.title,description:object.description});
});
var arrayLength=结果长度;
对于(变量i=0;ilet randomcolor=getRandomColor()
让randomcolor0=getRandomColor()
让randomcolor1=getRandomColor()
让randomcolor2=getRandomColor()
让randomcolor3=getRandomColor()
让randomcolor4=getRandomColor()
让randomcolor5=getRandomColor()
让randomcolor6=getRandomColor()
让randomcolor7=getRandomColor()
让randomcolor8=getRandomColor()
让randomcolor9=getRandomColor()
但是它一直在getRandomColor()后面添加i,而不是添加到变量中
您不能通过如下方式“命名”来访问变量:
randomcolor=randomcolor+i;
您应该创建一个数组,有很多方法可以在javascript中创建数组(创建一个空数组并在之后添加值,创建一个已经填充的数组,等等)
const randomColor=[
getRandomColor(),
getRandomColor(),
getRandomColor(),
getRandomColor(),
];
这将创建一个包含4个值的数组。此语法称为“文字数组”,请参阅关于数组
然后使用randomColor[i]
但据我所知,你甚至不需要事先创建这些颜色,然后储存,你可以:
for(设ii=0;ii
考虑以下示例
$(函数(){
函数getRandomColor(){
返回“#”+Math.random().toString(16).slice(2,8);
}
函数内容(数据){
$。每个(数据、功能(i、el){
$(“”).html(el.username).appendTo($(“.content”);
});
}
可变项目=[{
识别号码:24550986,
用户名:“addwell”,
配对组识别码:5378563
}, {
id:30168682,
用户名:“ekkelito”,
配对组识别码:5378563
}, {
身份证号码:41526903,
用户名:“dkmrood”,
配对组识别码:5373230
}, {
身份证号码:87892435,
用户名:“FluffyBunny”,
配对组识别码:5373230
}, {
身份证号码:115472481,
用户名:“提示”,
配对组识别码:5378563
}, {
身份证号码:290200108,
用户名:“Jonatan”,
配对组识别码:5376993
}, {
身份证号码:296745880,
用户名:“Joy”,
配对组识别码:5376993
}, {
身份证号码:352928851,
用户名:“DiktatorN”,
配对组识别码:5376993
}, {
id:932540677,
用户名:“Mikeeey”,
配对组识别码:5378560
}, {
身份证号码:1030322875,
用户名:“fknbr0r”,
配对组识别码:5377517
}];
控制台日志(“项目”,项目);
内容(项目);
$。每个(项目、功能(i、obj){
控制台日志(“-指针:+obj.username”);
$(“.content>span”)。每个(函数(j,el){
log(“--Stack:+$(el.text());
if($(el.text().indexOf(obj.username)==0){
$(el).css(“边框”,“1px实体”+getRandomColor());
log(“--Hit^:”+$(el.attr(“style”));
}
});
});
});
.content span{
显示:内联块;
填充:2px;
右边距:3倍;
}
什么是randomcolor=randomcolor+i;
应该做什么?randomcolor+i
将被视为字符串连接,因为randomcolor
是字符串。因此,在这种情况下,它是预期的输出。不确定您想在那里做什么,但必须有另一种实现方法