JavaScript(3)-计时器,表单验证

字符串和变量输出时,字符串必须加引号,变量直接写,用连接符连接。
1.Date对象
new.Date()获取当前系统日期
new.Date.getFullYear()以四位数返回年份
new.Date.getMonth()返回月份<0~11>
new.Date.getDate()返回一个月中的某一天<1~31>
new.Date.getHours()返回小时<0~23>
new.Date.getMinutes()返回分钟<0~59>
new.Date.getSeconds()返回秒数<0~59>
new.Date.getDay()返回一周中的某一天<0~6>
eg:

<script>
    var m=new Date;
    console.log(m);
    document.write("现在是:"+ m.getFullYear()+"年"+ (m.getMonth()+1)+"月"+ m.getDate()+"日"+ m.getHours()+":"+ m.getMinutes()+":"+ m.getSeconds()+" 星期"+ m.getDay()+"<br/>");
    document.write(m.toLocaleString()+"<br/>");
    document.write(m.toLocaleDateString()+"<br/>");
    document.write(m.toLocaleTimeString()+"<br/>");
</script>

date

2.计时器
启动:window.setInterval("函数名",1000);以1000ms(单位为毫秒)即1s定时。
停止:clearInterval(计时器变量名)clearTimeout(timer)
setInterval()- 间隔指定的毫秒数不停地执行指定代码,写在函数外;
setTimeout()- 暂停指定的毫秒数后执行指定的代码,写在函数内
清空和添加计时器应该是同一个名称,不然循环会越来越快。

3.String对象
属性:

string.length 
object.prototype.name=value  自定义属性

方法:

string.charAt(index)            返回指定位置的字符  //index表示位置,从0开始
string.charCodeAt(位置)         返回指定位置的字符unicode编码
string.concat(str1,str2)        方法用于连接两个或多个字符串
String.fromCharCode(ASCII码)      把指定的unicode编码转换成为字符串
string.indexOf(要查找的字符串,[起始位置])  返回指定字符在字符串中首次出现的位置,如果没有找到则返回-1;
string.lastIndexOf()        从后面开始查找字符
string.slice(star,end)  截取字符串的一部分,并返回新的字符串;star表示截取的起始位置,end表示截取的结束位置,位置从0开始,留头不留尾;
string.split(x,[y])     分割字符串成字符串数组;x表示分割的参考对象,y是可选项,y表示设置分割成数组个数;
string.substr(a,l)      提取字符串,a表示起始的索引位置,l表示要提取的字符串的长度;
string.substring(s,e)   提取字符串 s 表示起始索引位置,e表示结束的索引位置,包含s,不包含e位置,留头不留尾
string.replace(要替换的字符串,新的字符串)    查找匹配指定的字符串,返回使用新字符串代替匹配的字符串后的字符串(只替换第一个)
string.valueOf()          返回初始值
var array1=[1,2,3,4,5];
array1.splice(2,2,6)     返回的是被删除的元素

4.Array对象
定义:

 var m=[2,23,6,11,97,65];   // 简洁方式
 var m=new Array(); 
 m[0]=2;
 m[1]=23;

方法:

concat()     连接两个或多个数组;
pop()        删除数组的最后一个元素;
shift()      删除数组的第一个元素;
push()      向数组末尾添加一个或多个元素;
unshift()  向数组开头添加一个或多个元素;
splice() 方法用于插入、删除或替换数组的元素;
splice(index,how,[news])
        // index 表示添加或删除的位置
       // how  为0表示添加,如果数大于0表示删除个数,如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。
     // news  为可选项,表示添加的元素;
reverse() 方法用于颠倒数组中元素的顺序;
join() 方法用于把数组中的所有元素转换一个字符串.

5.表单验证

<form  novalidate></form>

form 中 novalidate 禁止浏览器默认验证 .
required 必填项,为浏览器默认属性,加上novalidate后将不再有效。

<form action="" method="get" onsubmit="return checkform()" novalidate>
    <p><label for="username">
    用户名:</label><input type="text" class="username" id="username"/> 
    <span class="usertext"></span>
    </p>
    <p><label for="pwd"> 
    密码:<input type="password" class="pwd" id="pwd"/></label> 
    <span class="pwdtext"></span> 
    </p>
    <p><label for="email"> 
    邮箱:<input type="email" class="email" id="email"/></label> 
    <span class="emailtext"></span> 
    </p>
    <p><input type="submit"/> <input type="reset"/></p>
</form>
<script>
    function checkform() {
        var user = document.getElementsByClassName("username")[0];  //用户名验证
        var pwd = document.getElementsByClassName("pwd")[0];
        var email = document.getElementsByClassName("email")[0];
        if (user.value.length == 0) {
           document.getElementsByClassName("usertext")[0].innerHTML = "用户名不能为空!";
            return false;
        }
        else {
            for (var i = 0; i < user.value.length; i++) {
                var one = user.value.trim().toLowerCase().charAt(i);
                // one提取输入的每一个字符,trim()去两边的空格。
                if ((!(one >= 0 && one <= 9)) && (!(one >= "a" && one <= "z")) && (one != "_")) {
                    document.getElementsByClassName("usertext")[0].innerText = "用户名格式不正确!";
                    return false;
                }
            }
        }   // 密码验证
        if (pwd.value.length == 0) {
            document.getElementsByClassName("pwdtext")[0].innerHTML = "密码不能为空!";
            return false;
        }
        else if (!(pwd.value.length >= 6 && pwd.value.length <= 12)) {
            document.getElementsByClassName("pwdtext")[0].innerText = "密码必须为6-12位!";
            return false;
        }  // 邮箱验证
        if(email.value.indexOf("@")==-1||email.value.indexOf(".")==-1){

//对此否定语句,用“或||”,两个都必须成立才可通过验证;用“与&&”的话,只有其中一个具备则可通过验证。
            document.getElementsByClassName("emailtext")[0].innerText="邮箱格式不正确!";
            return false;
        }
    }
</script>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值