发表于: 2018-04-29 22:06:48
1 406
今天完成的事:
今天一天都在看JS的基础知识,很迷,别人的代码也能看的懂,但是,自己写的时候就是写不出了来,
也不知道从那里开始写,很尴尬。
明天的计划:
继续看JS的基础知识吧,任务14先放一下,到时候写完任务14就可以直接开始JS了,进度应该可以快一些,
不知道这个理论从哪里来的。
遇到的困难:
1.感觉主要的困难还是JS的代码看的懂,但是写不出来,不知道从哪里开始写,请教了一下师兄,师兄的意思是
让我先写伪代码,开始把业务逻辑写出来然后,一个点一个点的慢慢攻破。
今天的收获:
for (var i=0;i<3;i++) {
m[i] = Math.floor(Math.random() * a.length);
}
1.一开始总以为这段代码的i使用来选3个盒子的,到了昨天才知道,执行3次,每次选一个盒子,
但是,我自己这样写出来之后会有一个很明显的问题就是,很容易在同一次选到只有2个盒子的情况,
解决办法,嗯。。。没想到。
2.
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+")"
}
一开始写这段的时候呐,不知道要拼字符串,所以上面的写对了,但是不会返回rgb选出来的值,导致无法渲染颜色,后来是字符串这么拼的“rgb(“+r + ‘,’+ g +‘,’+b +“)”在我自己看来其实这没问题,
但是,我们大佬张说了,这是错的,然后改了一下之后,莫名其妙的就好了,暂时不知道那里错了,
所以以后不把引号乱写就行了,
"rgb("+ r +','+g +','+b+")"
这样是对的。
3.原始值是不可变的例如:
var s =:“hello” //定义一个由小写字母组成的文本
s toupperCase(); //返回的值为“HELLO”,但是并没有改变s的值
s //=hello 所以原始值是不可改变的只会在原始值的基础上返回一个新的值
4.对象的值可修改:
var o={x:1}; //定于一个对象
o.x =2; //通过修改对象属性值来更改对象
o.y = 3; //再次更改这个对象。给它增加一个新属性、、
数组也是可更改的:
var a =[1,2,3] //定义一个数组、
a[0]=0; //更改一个数组的元素。
a[3] = 4; //给数组增加一个新的元素。
评论