Javascript陷阱。。。。。。。
1.浮点运算
这可能是挫败一些对javascript不熟悉并准备执行一些数学运算的人的主要原
因.
<script>
alert(0.02 / 0.1); //0.19999999999999998
alert(1.14 * 100); //113.99999999999999 ;)
</script>
Math.round()
就能在这里派上用场.
2.加号操作符的重载
"+"加号运算符即能做算术运算,又能够做字
符串的连接.如果正确的使用它是很便利的.让我们看一看.
<script>
var
msg, one=
"1"
;
msg = 2 + "1"
;
// msg = "21"
msg = 2 + one; // msg = "21"
msg = 1 + 1 + 1 + " musketeers"
;
// msg = "3 musketeers"
msg = "Bond "
+ 0 + 0 + 7;
//msg = "Bond 007"
</script>
上
述行为是因为这些运算都是从左到右执行的.类型的转换是基于其中的字符串或数字.
3.行尾插入分号
javascript
自动在行尾插入分号";",让我们来看看这在一个简单的示例中的情况.
<script>
function
returnSame(a){
return
//Inserts semi-colon to convert to return;
a //a becomes a; - Unreachable
}
alert(returnSame(2)); //Output is undefined
</script>
当
在创建对象或使用对象的值的时候这个神奇的分号能使事情变得
相关文档:
javascript的history.go(-1)
echo '<script language="javascript">{alert("留言不能为空!");history.go(-1);}</script>';}
echo '<script language="javascript">{alert("留言不能为空!");return true;}</script>';}
这是不刷新页面的方式 ......
判断(value)是否是一个数字,假如值是NaN那么IsNan返回TRUE,否则返回FALSE。
还有一种办法,变量可以与它自身进行比较。 假如比较的结果不等,那么它就是 NaN 。
这是因为 NaN 是唯一与自身不等的值。
第一种方法:
<html>
<head>
<title>简单计算器的制作</title>
</ ......
ZT:http://www.ruanyifeng.com/blog/2010/05/object-oriented_javascript_inheritance.html
上一次的文章,主要介绍了如何"封装"数据和方法,从原型对象生成实例。
今天要介绍的是,多个原型对象之间如何"继承"。
比如,现在有一个"动物"对象,
function Animal(){
this.species = "动物";
}
还有 ......
在Web开发中,会遇到从一页(父页)导向另一页(子页),并且要求“返回”父页的情况,在这里如果用ASP.NET提供的 Response.Redirect()方法,往往不会达到理想的效果,例如:返回后,重新加载了页面,无法保存导向子页前的状态,等等,在这里我就介绍 一下如何使用JavaScript中history.go()函数来实现返回 ......