JavaScript随笔3之有关JavaScript使用的几个误区和验证方面的问题的理解

一、JavaScript使用的几个误区

1、加法与连接注意事项

  •      加法是两个数字相加。
  •      连接是两个字符串连接。
  •      JavaScript 的加法和连接都使用 + 运算符

     var x = 10 + 5;          // x 的结果为 15
     var x = 10 + "5";        // x 的结果为 "105"

2、浮点型数据使用注意事项

var x = 0.1;
var y = 0.2;
var z = x + y;          // z 的结果为 0.30000000000000004
if (z == 0.3)            // 返回 false

为解决,可以采用:

var z = (x * 10 + y * 10) / 10;       // z 的结果为 0.3

3、 在 JavaScript 中,分号是可选的 

4、注意:数组中使用名字来索引

(1)JavaScript 不支持使用名字来索引数组,只允许使用数字索引。

var person = [];
person[0] = "John";
person[1] = "Doe";
person[2] = 46;
var x = person.length;         // person.length 返回 3
var y = person[0];             // person[0] 返回 "John"

(2)在 JavaScript 中, 对象 使用 名字作为索引

         如果你使用名字作为索引,当访问数组时,JavaScript 会把数组重新定义为标准对象。

         执行这样操作后,数组的方法及属性将不能再使用,否则会产生错误:

var person = [];
person["firstName"] = "John";
person["lastName"] = "Doe";
person["age"] = 46;
var x = person.length;         // person.length 返回 0
var y = person[0];             // person[0] 返回 undefined

5、程序块作用域

for (var i = 0; i < 10; i++) {
    // some code
}
return i;         // i  返回10 

二、 验证

1、isNaN(x)    //判断x是否为数字,不是为true

2、<input>中的required 属性会阻止表单提交      required属性:规定输入元素字段是必需的

  

 3、isValid()   //判断是否有效,有效为true

 4、验证邮箱是否有效的实例

有效:输入的数据必须包含 @ 符号和点号(.)。同时,@ 不可以是邮件地址的首字符,并且 @ 之后需有至少一个点号

<head>
<script>
function validateForm(){
	var x=document.forms["myForm"]["email"].value;
	var atpos=x.indexOf("@");
	var dotpos=x.lastIndexOf(".");
	if (atpos<1 || dotpos<atpos+2 || dotpos+2>=x.length){
		alert("不是一个有效的 e-mail 地址");
  		return false;
	}
}
</script>
</head>
<body>
	
<form name="myForm" action="demo-form.php" onsubmit="return validateForm();" method="post">
Email: <input type="text" name="email">
<input type="submit" value="提交">
</form>
	
</body>

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值