今天完成的事
1,学习并使用js在不同页面传参的方法:
(1)url
window.location.href = "page3.html?all=" + newValue2 + "&&killerNum=" + killerNum;
.html文件,需要跳转的页面,?后面的为需要传递的数据,多个数据可用&连接;
(2)H5 web storege
(3)cookie
(4)表单
其中(2)(3)(4)为测试使用,仅作记录;
2,json的学习使用;使用其来存储角色相关的信息,并且根据角色人数的不同,动态的生成角色匹配json;
var url=decodeURI(window.location.href).split('=');
console.log(url);
var regexp1 = /\d+/;
var allPlayers=url[1].match(regexp1);
var killer = url[2].match(regexp1);
var all=allPlayers[0];
var killereNum=killer[0];
var roleList = {};
for (var i=0; i<all; i++) {
roleList[i]={};
roleList[i]["order"] = i+1;
roleList[i]["role"] = "平民";
}
var killerArr=[];
var random = Math.floor(Math.random()*all);
killerArr.push(random);
for (var j=0; j<all; j++) {
if (killerArr.length<killereNum) {
var randomNum = Math.floor(Math.random()*all);
if (killerArr.indexOf(randomNum) == -1) {
killerArr.push(randomNum);
}
}
}
for (var k=0; k<killereNum; k++) {
roleList[killerArr[k]].role = "杀手";
}
通过对页面传递过来的url携带的信息进行解释提取,然后根据参数值动态生成想要的角色配比;
3,jQuery的学习使用;
https://www.runoob.com/jquery/jquery-syntax.html
4,解决任务二代码冲突:将有冲突的函数放入立即加载中;
window.onload=function () { 有冲突的函数}
明天的计划
1,学习状态机的使用方法;
2,完成任务二的查看逻辑跳转;
问题
1,对于页面之间传参的方法虽然有几种,但考虑到传输数据并不多,而且并不需要对其有过多安全性的考虑,所以使用简单的url传参;
2,json对象中没有专门可以设置添加属性的方法,但是有
roleList[i]["role"] = "平民";
可以直接使用,会在没有该属性的json的对象的直接添加该属性;
收获
jQuery的语法学习,相对于原生的javascript来说,jQ操作dom元素更加简单,代码也更加简洁,对于id,class类,元素,属性的选择都可以通过相似的语句选中;而且其他强大的功能以后都会用到;
评论