发表于: 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的基本数据




返回列表 返回列表
评论

    分享到