Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为每个数组设置随机颜色_Javascript_Jquery_Arrays - Fatal编程技术网

Javascript 为每个数组设置随机颜色

Javascript 为每个数组设置随机颜色,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

我在这个数组中循环,我希望每个数组对象都得到一个随机颜色,但它一直在getRandomColor()后面添加I,而不是添加到变量中

所以它的结果就像是#0A60860+i

为什么呢

我的app.js

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;i我发现这段代码有很多地方并不理想,但我假设您是初学者

首先,这不是一个数组,它们只是多个变量

let 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
是字符串。因此,在这种情况下,它是预期的输出。不确定您想在那里做什么,但必须有另一种实现方法