http://www.w3school.com.cn/js/jsref_obj_math.asp
parseInt(string, radix)
string | 必需。要被解析的字符串。 |
radix | 可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。 如果省略该参数或其值为 0,则数字将以 10 为基础来解析。 如果它以 “0x” 或 “0X” 开头,将以 16 为基数。 如果该参数小于 2 或者大于 36,则 parseInt() 将返回 NaN。 |
alert('09');//09
alert(09);//9
alert(parseInt('09'));//0
alert(parseInt(09));//9
当参数 radix 的值为 0,或没有设置该参数时,parseInt() 会根据 string 来判断数字的基数。
举例,如果 string 以 "0x" 开头,parseInt() 会把 string 的其余部分解析为十六进制的整数。如果 string 以 0 开头,那么 ECMAScript v3 允许 parseInt() 的一个实现把其后的字符解析为八进制或十六进制的数字。如果 string 以 1 ~ 9 的数字开头,parseInt() 将把它解析为十进制的整数。
注释:只有字符串中的第一个数字会被返回
注释:开头和结尾的空格是允许的。
如果字符串的第一个字符不能被转换为数字,那么 parseFloat() 会返回 NaN。
parseInt("10"); //返回 10
parseInt("19",10); //返回 19 (10+9)
parseInt("11",2); //返回 3 (10+9)
parseInt("17",8); //返回 15 (8+7)
parseInt("1f",16); //返回 31 (16+15)
parseInt("010"); //未定:返回 10 或 8
Java:
十进制的整型常量用非0开头的数值表示,如100,-50:
八进制的整型常量用以0开头的数字表示,如017代表十进制的数字15;
十六进制整型常量用0x开头的数值表示,如0x2F代表十进制的数字47。
数据类型 关键字 占用位数 缺省数值 取值范围
布尔型 boolean 8 false true/false
字节型 byte 8 0 -128—127
字符型 char 16 `\u0000` \u0000`~\u FFFF
短整型 sbort 16 O -32768—32767
整型 int 32 0 -2147483648~2147483647
浮点型 float 32 0.0F 1.40129846432481707e-45~
3.40282346638528860e+38
双精度 double 64 0.0D 4.94065645841246544e-324~
1.79769313486231570e+308d
长整型 long 64 0 -9223372036854775808~9223372036854775807
js在页面加载顺序
本文来自优快云博客出处:http://blog.youkuaiyun.com/shishaomeng/archive/2009/01/17/3812881.aspx
页面使用js:
- Javascript代码放在标记对<script>和</script>之间
由<script />标记的src属性引入外部的js文件
放在事件处理程序中,比如:<p onclick="alert('我是由onclick事件执行的Javascript')">点击我</p>
作为URL的主体,这个URL使用特殊的Javascript:协议,比如:<a href="javascript:alert('我是由javascript:协议执行的javascript')">点击我</a>
利用javascript本身的document.write()方法写入新的javascript代码
利用Ajax异步获取javascript代码,然后执行 - 页面上的Javascript代码是HTML文档的一部分,所以Javascript在页面装载时执行的顺序就是其引入标记<script />的出现顺序, <script />标记里面的或者通过src引入的外部JS,都是按照其语句出现的顺序执行,而且执行过程是文档装载的一部分。
- 每个脚本定义的全局变量和函数,都可以被后面执行的脚本所调用。
- 变量的调用,必须是前面已经声明,否则获取的变量值是undefined
<a href='javascript:void(0)' onclick=“函数名”>:
不建议这样写如果是forward另一页面(在ie6下页面不跳转),先执行onclick事件再执行href,在href=javascript:函数名这样写也会有问题。<a/>只有加上href鼠标是默认手型,cursor:pointer;兼容
不同浏览器兼容问题,js&css按照标准去写。
写js用兼容性js框架去写减少错误。
js中引用页面定义的<c:set var="ctx" value="${pageContext.request.contextPath}"/>
如果在当前页面编写<script type="text/javascript">...alert('${ctx}');</script>可以得到,
如果是<script src="ds.js" type="text/javascript"/>在ds.js中var ctx = '${ctx}';//得不到值
原因:如果页面引用的外部JS脚本使用EL获取服务端执行的代码,是无法获取到值的.只有在JSP文件里的JS脚本才能取到服务端代码的值.
所有的jsp文件在响应给用户时都会编译成servlet,执行其中所有的JSP脚本或EL表达式(在jsp里的js中的el表达式执行),并由java输出流转化成HTML文本代码response响应给客户端,所以浏览器接收到的只是html页面。而外部js文件与HTML一起响应给客户端,并在本地组装在一起,所以<script src="xxx.js">这样的外部引用JS,是无法执行服务端脚本的。
jsp-html过程
js高级编程:
变量作用域:http://www.cnblogs.com/aming/archive/2008/07/29/1255388.html?login=1#commentform
1.在同一作用域中,JavaScript允许变量重复定义,后一个定义将覆盖前一个定义。
2.函数内部如果不加关键字var定义的变量,默认为全局变量。