发表于: 2017-04-10 22:58:26
2 1226
今天完成是事情:task2基本成型,点击设置可以随机分配水民和杀手的身份;
var total;//声明一个变量,总人数
function setup() {
total = parseInt(slider().value);//总人数注入
var killer;//杀手
var Water;//水民
var sh = [];
killer = Math.floor(total / 4);//杀手为总人数1/4,向下取整
Water = total - killer;//水民人数为总人数减去杀手数
for (i = 0; i < Water; i++) {
sh.push({role: '水民'})
}
for (i = 0; i < killer; i++) {
sh.push({role: '杀手'});
//打乱数组
sh.sort(function(a,b){ return Math.random()>.5 ? -1 : 1;});
//打乱数组另一种方法
// for (var k = sh.length; k--;) {
// var j = Math.floor(Math.random() * (k + 1));
// var qaz = sh[k];
// sh[k] = sh[j];
// sh[j] = qaz
// }
}
abc = "";
for (i = 0; i < total; i++) {
abc = abc + sh[i].role + " 1 人" + "<br/>";
document.getElementById("content1").innerHTML = abc; //输出
}
}
学习LocalStorage存储JSON对象:
localStorage 是没有时间限制的数据存储 (记得之前有师兄小课堂讲过关于sessionStorage 、localStorage 和
cookie 之间的区别回头再查查资料看看师兄的小课堂ppt)
1.存储前先用JSON.stringify()方法将json对象转换成字符串形式(这个JSON.stringify()可以将JavaScript 值序列
化成 JSON 字符串);
2.后续要操作该JSON对象,要将之前存储的JSON字符串先转成JSON对象再进行操作(var s=
JSON.parse(localStorage.zong););
明天计划做的事情:
1.准备小课堂;
2.JS正则表达式
3.学习关于jQuery的资料;
遇到的问题:js打乱数组在百度上看了好几种方法,有点看不太懂,用了最简单的方法:
sh.sort(function(a,b){ return Math.random()>.5 ? -1 : 1;});
是这种方法有个问题,杀手出现在后面的几率相当大了;然后看了师兄的代码;
for (var k = sh.length; k--;) {
var j = Math.floor(Math.random() * (k + 1));
var qaz = sh[k];
sh[k] = sh[j];
sh[j] = qaz
}
这个挺好用的,但是不是很理解原理。
收获:
1.push();innerHTML;
2.js数组,js数组打乱的简单方式;
3.LocalStorage存储JSON对象:
评论