发表于: 2019-12-06 12:46:18
1 927
今日完成:
完成玩家配比页面:
玩家数量分配,要保证杀手最多为平民的一半。
所以总数除以3,去掉小数就是杀手的数量。
对输入框进行限制:
1、长度最大为两位
maxlength="2"
2、只允许输入数字
正则表达式:
amount.value=amount.value.replace(/[^\d]/g,'');
匹配所有非数字的内容,然后替换为空字符串。
[^\d]表示除了数字的所有内容
/g为全局匹配
<input id="amount" type="text" oninput="player()" maxlength="2">
function player() {
var killer = document.getElementById('killer');
var vulgar = document.getElementById('vulgar');
var amount = document.getElementById('amount');
amount.value=amount.value.replace(/[^\d]/g,'');
var amount_num = amount.value;
if (amount_num >= 4 && amount_num <= 18) {
var am_num = amount_num;
var killer_num = parseInt(am_num / 3);
killer.innerHTML = killer_num;
vulgar.innerHTML = am_num - killer_num;
}else {
killer.innerHTML="";
vulgar.innerHTML="";
}
}
function btn() {
var amount = document.getElementById('amount');
var amount_num = amount.value;
if (amount_num< 4 || amount_num > 18) {
alert('请输入正确的玩家数量。');
}
}
JS有哪些数据类型和常用方法?
5种基本数据类型:
Undefined、Null、Boolean、Number和String
1种复杂数据类型:
Object(由一组无序的键值对组成)
Undefined
类型只有一个值,即特殊的undefined.
在使用var声明变量但未对其加以初始化时,这个变量的值就是undefined.
如:
var message;
alert(message == undefined);
true
这个例子只声明了变量message,但未对其进行初始化。比较这个变量与undefined字面量,结果表明它们是相等的。
var message = undefined;
alert (message == undefinde);
一般而言,不存在需要显式地把一个变量设置为undefined值的情况。
字面值undefined的主要目的是用于比较。
即便未初始化的变量会自动被赋予undefined值,但显示地初始化变量依然是明智的选择。
如果能够做到这一点,那么当typeof 操作符返回“undefined”值时,我们就知道被检测的变量还没有被声明,
而不是尚未初始化。
Null类型
Null类型是第二个只有一个值的数据类型,这个特殊的值是null。
从逻辑角度来看,null值表示一个空对象指针,而这也正是使用typeof操作符检测null值时会返回“object”的
原因。
如果定义好的变量准备在将来用于保存对象,那么最好将该变量初始化为null而不是其他值。这样一来,只要直接检查null值就可以知道相应的变量是否已经保存了一个 对象的引用。
实际上,undefined值是派生自null值的。
这里,位于null和undefined之间的相等操作符(==)总是返回true,不过要注意的是,这个操作符出于比较的目的会转换其操作数。
尽管null和undefined有这样的关系,但它们的用途完全不同。如前所述,无论在什么情况下都没必要把一个变量的值显示地设置为undefined,可是同样的规则对null却不适用。换句话说,只要意在保存对象的变量还没有真正保存对象,就应该明确地让该变量保存null值。这样做不仅可以体现null作为空对象指针的惯例,而且也有助于进一步区分null和undefined
Boolean类型
该类型只有两个字面值:true和false.
这两个值与数字值不是一回事,因此true不一定等于1,而false也不一定等于0.
需要注意的是,Boolean类型的字面值true和false是区分大小的。也就是说,True和False(以及其他的混合大小形式)都不是Boolean值,只是标识符。
明日计划:
完成任务三
遇到的问题:
无
收获:
了解了js的基本数据
评论