发表于: 2018-04-23 23:41:54

1 228


今天完成的事:

了解JS任务1的基础知识,并开始学习师兄们的写法思路,模仿者师兄的写法与思路,自己学了好几次,

遇到的坑挺多的,一脸茫然,回到了刚学css的时候。


明天的计划:

提交css的任务,继续JS任务1的了解与制作,努力理解一下任务1的需求,思路,写法,JavaScript的语法。


遇到的困难:

var dodge;

function start() {
clearInterval("dodge");
dodge = setInterval(select, 1000);

声明 变量为 dodge; 函数名为 start 参数为未定义; dodeg 解除定时器,既然是解除定时器为什么又能在点击开始的时候,颜色开始变呐,这个点没有get到。


function select() {
gerrn();
var m = [];
for (var i = 0; i < 3; i++) {
m[i] = Math.floor(Math.random() * a.length);
}

师兄告诉我说,i每次取值从0-1直接取值,取3次,这里也没有写i取值的地方,我理解的是i循环3次最后一次为2,所以数组为0,1,2。取值应该是在,0,1,2直接取,所以会取到2,导致盒子有时候会有2个盒子变颜色的情况。


return "rgb("+r+','+ g +','+ b +")";

《JavaScript 标准参考教程(alpha)》中写到,数组可以为,‘a’'b' 'c' 值为‘abc’这样的情况下,rgb数组是否可以为‘r’'g'  'b'。

我自己在试验的过程中实验了一下,得到的结果是,盒子无法正常的变换颜色,但是,不会报错。

很疑惑的就是,既然数组是对的,取值也是对的,为什么盒子的颜色无法正常的改变。


今天的收获:

1.

function start() {
clearInterval("dodge");
dodge= setInterval(select,50);
//设置盒子闪烁间隔时间。
}

第二条属性在困难里面说到了,没有理解,第三条属性为,声明的变量, 等于设置时间间隔,为每50毫秒闪一次,我准备闪瞎自己。

2.

function yellow() {
for(var q = 0; q < a.length; q++) {
a[q].style.background = "yellow";
}
}

声明函数名为yellow  for循环 变量为q 当q小于a的总值时,q+1,取a的0-8的添加颜色为yellow。

3.

for(var m=0;m<b.length;m++){
a[b[m]].style.background = getcolor();
}
}
function getcolor(){
var r = Math.floor(Math.random() * 256);
var g = Math.floor(Math.random() * 256);
var b = Math.floor(Math.random() * 256);
//随机获取颜色
   return "rgb(" + r + ',' + g + ',' + b + ")";
}

上面for循环声明m,m小于b的总值时m+1 a为html盒子类,变量b不添加了,a的数组为b,b的数组为m,为a赋值,第二条,函数 getcolor,声明rgb,rgb各取一个随机值,向下去整数,为盒子添加颜色,可能会去到,颜色一样的时候,不过几率会很小。


返回列表 返回列表
评论

    分享到