JS函数(内置函数)

[b][size=x-large]内置函数[/size][/b]
[b][size=large]1.类型转换函数[/size][/b]

1)函数:
parseInt:parseInt(数据)
parseFloat:parseInt(数据)

2)特点:
[list]
[*]都是部分转换(符合条件的前部)
[*]parseInt可以自动识别10、16进制数
[*]另外,parseInt还可以指定进制,进制最小进制为二进制,最大进制为36进制(0-9、a-z),书写:parseInt(数据,进制)
[/list]3)举例
<script type="text/javascript">
var str=prompt("pls input str:");//输入234.535jsi赋值给str
// 特点1:(前)部分转换
var f=parseFloat(str);
// 特点2:自动识别10、16进制(仅parseInt)
var n=parseInt(str);
console.debug("f="+f);
console.debug("n="+n);
// parseInt可以指定进制(2--36)
var a=parseInt(str,36);
console.debug("a="+a);
</script>
控制台输出结果:
[img]http://dl2.iteye.com/upload/attachment/0117/7846/c990c156-d635-3399-8701-0cc43590cd06.png[/img]
4)补充:
parseInt可以用于用户输入一个数值n时,利用parseInt(n)==n判断是否是一个整数

[b][size=large]2.特定计算函数[/size][/b]
1)函数:eval(“表达式”)
2)作用:
[list]
[*]计算表达式的结果,支持简单表达式、带变量表达式以及条件分支表达式
[*]解析JSON格式字符串[color=red](?)[/color]
[/list]
[b][size=large]3.判断函数[/size][/b]
1)isNaN(is not a number):
[list]
[*]判断表达式是否是数值类型,如果是(not a number)则返回true,如果是数值类型则返回false;
[*]返回值为true不代表不能转换为数值类型,因为isNaN是完整判断,而parseInt为部分判断
[*]举例:
<script type="text/javascript">
var n="123f"
console.debug(isNaN(n));
console.debug(parseInt(n));
</script>
控制台输出结果:
[img]http://dl2.iteye.com/upload/attachment/0117/7848/62b04e15-49e4-3625-bbb1-a3ee976a887c.png[/img]
[*]补充:
isNaN可以用于判断输入的数据是否是数值类型的数
if (!isNaN(n) && n>0 && parseInt(n)==n)用来判断数据n为一个正整数
2)isFinite
判断是否是有限数字,如果是NaN、正负Infinity则返回false

[b][size=large]4.编解码函数[/size][/b]
1)作用:
用于将特殊字符串进行编码以及对编码过的字符串进行解码
2)遵循ISO8859-1规则的编解码
[list]
[*]encodeURI
[*]decodeURI
[/list]3)遵循Unicode规则的编解码
[list]
[*]escape
[*]unescape
[*]双字节字符被替换成十六进制的转义序列,不会对数字、ASCII字母字符以及符号“-_.*”进行编码
[*]中文范围:%u4e00--%u9fa5
[/list]4)两种编码在一些标点符号上有差别
5)举例
<script type="text/javascript">
// ISO8859-1
var str="李#四";
var enStr=encodeURI(str);
console.debug(enStr);
var deStr=decodeURI(enStr);
console.debug(deStr);

// Unicode
str="一丁二#三四";
var esStr=escape(str);
var unesStr=unescape(esStr);
console.debug(esStr);
console.debug(unesStr);
</script>

控制台输出结果:
[img]http://dl2.iteye.com/upload/attachment/0117/7850/a32a9cbe-b95a-363f-8c56-68356d3b7615.png[/img]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值