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>
当
在创建对象或使用对象的值的时候这个神奇的分号能使事情变得
相关文档:
//显示当前时间----------------------------------------------------------
<SCRIPT language="javascript" type="text/javascript" >
function reloop(){
var time = new Date( ); //获得当前时间
//获得年、月、日,Date()函数中的月份是从0-11计算
var year = time.getFullYear ......
javascript的history.go(-1)
echo '<script language="javascript">{alert("留言不能为空!");history.go(-1);}</script>';}
echo '<script language="javascript">{alert("留言不能为空!");return true;}</script>';}
这是不刷新页面的方式 ......
1. document.formName.item("itemName") 问题
说明:IE下,可以使用document.formName.item("itemName")或document.formName.elements["elementName"];
Firefox下,只能使用document.formName.elements["elementName"].
解决方法:统一使用document.formName.elements["elementName"].
2.集合类对象问题
说明:IE下,可 ......
<script>setTimeout("redirect('<?=$url_forward?>');", <?=$ms?>);</script>
设置分页:$page $pagesize $offset = ($page-1)*$pagesize;
$limit = "limit $offset,$pagesize" ......
**
* 我在网上看到过很多BASE64的JavaScript算法,都觉得不满意,于是自己写了一个,在这里分享一下。
* 我的代码在质量的效率都较高,没有一些冗余的操作。总体来讲我觉得非常不错。
* 如果大家有什么不懂的地方可以问我。
*/
var BASE64={
/**
* 此变量为编码的 ......