一:严格模式
通过在脚本或函数的头部添加“use strict”表达式来声明。严格模式下,不能使用未声明的变量。
在严格模式下不允许删除对象,变量或函数
为什么要使用严格模式?
1.增加安全性 2.提高编译器的效率 3.为未来版本的javascript做好铺垫
保留关键字? 为了向将来的javascript过度,严格模式下有一些保留的关键字:implements,let,public等等,用这些保留的关键字作为变量报错
二. javascript表单
1.表单验证
//验证输入框不能为空
<script>
function validateForm() {
var x = document.forms["myForm"]["fname"].value;
if (x == null || x == "") {
alert("需要输入名字。");
return false;
}
}
</script>
</head>
<body>
<form action="demo_form.php" method="post" name="myForm">
<input type="text" name="fname" required="required">
<input type="submit" value="提交" οnclick="validateForm()">
</form>
<p>点击提交按钮,如果输入框是空的,浏览器会提示错误信息。</p>
</body>
//验证是否输入的数字的大小
<script>
function number(){
var x,text;
x=document.getElementById("num").value;
if(isNaN(x)||x<1||x>10){
text = "error!";
}else{
text = "is number!";
}
document.getElementById("demo").innerHTML = text;
}
</script>
HTML的约束验证?(表单被提交的时候浏览器进行验证,有html的输入属性,css伪类选择器)
表单验证:
email验证:
<SCRIPT LANGUAGE=javascript RUNAT=Server>
function isEmail(strEmail) {
if (strEmail.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)
return true;
else
alert("oh");
}
</SCRIPT>
<input type=text οnblur=isEmail(this.value)>