日期:2014-05-16 浏览次数:20349 次
String,Date,Math常用函数
String对象:
?
1.length属性
说明:获取字符串的长度
实例:
var str="abc";
var i=str.length;//output:3
?
2.charAt()方法
说明:从字符串中找出一个指定索引(位置)的字符
实例:
var str="abc";
var str1=str.charAt(2);//output:c
//字符串索引从0开始
?
3.indexOf()方法
说明:得到子字符串在母字符串中第一次出现的位置(下标),如找不到则输出"-1";
格式:index(子字符串,起始索引);
实例:
var str="abcdb";
var i=str.indexOf('b');//output:1
var j=str.indexOf('b',2);//output:4
?
4.lastIndexOf()方法
说明:得到子字符串在母字符串中第一次出现的位置,与indexOf不同的是,lastIndexOf是从最后一个字符开始搜索.
如果找不到则输入"-1"
实例:
var str="abcdcbd";
alert(str.lastIndexOf('bd'));//output:5
alert(str.lastIndexOf('b',3));//output:1,这里第二个参数为3代表在索引3的末尾开始查找所以输出是1
alert(str.lastIndexOf('b',5));//output:5,这里第二个参数为5代表在索引5的末尾开始查找所以输出是5
//注意:lastIndexOf是从最后一个字符开始搜索,那么你指定了:str.lastIndexOf('b',5)它就会从索引5的位置向前搜索'b'的索引
?
4.substring()方法
说明:截取母字符串的一部分字符串.
格式:substring(起始索引,终止索引)
实例:
var str="abcdefg";
alert(str.substring(0,3));//output:abc
alert(str.substring(3,0));
//output:abc,substring()函数会自动判断哪个是起始,那个是终止.
//所以会把参数0放到前面,把参数3放到后面,所以输出的还是:abc
alert(str.substring(3));//output:defg
注意:返回值并不会包含借宿索引的那个字符,而是到其前一个字符为止.
?
5.replace()方法
说明:替换字符串中指定的子字符串为对应字符串
格式:replace("指定的子字符串","替换为相对应的字符串")
实例:
var str="abcdbfgbc";
alert(str.replace("bc",'kk'));//output:akkdbfgbc
注意:只替换相符的第一个字符串
这点与C#不同,看下面实例:
string tt = "abcdcd";
Console.WriteLine(tt.Replace("cd","aa"));
//输出:abaaaa,C#的Replac函数会在字符串中搜索所有为"cd"的字符串,并将为"cd"的字符串替换为"aa".
?
6.toLowerCase()方法和toUpperCase()方法
toLowerCase()方法
说明:把输入字符串中的大写字母全部变成小写字母.
实例:
var str="JAVASCRIPT";
var newstr=str.toLowerCase();
注意:对中文没有影响
?
toUpperCate()方法
说明;把输入字符串中的小写字母全部变成大写字母
实例:
var str="javascript";
var newStr=str.toUpperCase();
注意:对中文没有影响
?
习题:
1:用户输入文字,如长度大于5则只显示5个字符,并在其后加上“。。。”,如长度小于5,则原样显示.如输入的文字有英文,必须把所有的文字全部转换为小写
算法如下:
把用户输入的文字转换为小写(toLowerCase)
判断是否大于5个字符(if ,length),如大于则只取前16个字符(substring(0,16))并加上“….”(字符串连接符“+”)输出否则(else)输出
?
var input=prompt("请输入文字:","");
if(input.length>5){
?input=input.substring(0,16)+"...";
?alert(input.toLowerCase());
}else{
?alert(input.toLowerCase());?
}
?
2:判断用户输入的名字中是否有 “21shipin.com”字符,如有,则弹出“请不要乱起名字“并指出哪个字符起含有非法字符,否则弹出“嗯,好名字“
算运如下:
indexOf(“21shipin.com”)如有,则返回的不是“-1”
?
var input=prompt("请输入字符串:","");
if(input.toLowerCase().indexOf("21shipin.com")!=-1){
?alert("请不要乱起名字,在字符位置"+(input.toLowerCase().indexOf("21shipin.com")+1)+"起含有非法字符!");
?alert(input.toLowerCase().replace("21shipin.com","*****"));
}else{
?alert("恩,好名字");
}
?
Date对象:
Date对象的属性和方法:
Date对象在使用前,必须先使用new指定实例化一个变量,然后才可以用该变量调用相关函数.我们使用
string函数时,需把字符串放在一个变量,才能对这个字符串变量使用string函数,同样,我们Date对象
函数的使用,也必须把一个时期放在一个变量中,也就是对象实例化
语法:
var myDate=new Date();//获取当前时期放到变量中.
var myDate=new Date(年,月,日);//获取指定年月日放入变量中,其它的时分秒均为0
var myDate=new Date(年,月,日,时,分,秒);
myDate.函数();
?
getYear();获取年
getMonth();获取月
getDate();获取当前月第几日
getDay();获取星期几
getHours();//获取小时
getMinutes();//获取分钟
getSeconds();//获取秒
getTime();//获取毫秒
getYear()方法
获得年份
实例
var date=new Date();
alert(date.getYear());
getMonth()方法
获得月份.
实例:
var date=new Date();
alert(date.getMonth());
注意:1月至12月所对应的值分别为0至11.
?
getDate()方法
获取当日号数
实例:
var date=new Date();
alert(date.getDate());
?
输出年月日:
var newYMD=new Date(),newYear,newMonth,newDate;
newYear=newYMD.getYear();
newMonth=newYMD.getMonth()+1;
newDate=newYMD.getDate();
alert(newYear+"年"+newMonth+"月"+newDate+"日");
?
getDay()方法
说明:获取星期几
实例:
var myDate=new Date();
var day=myDate.getDay();