日期:2014-05-16  浏览次数:20349 次

js中String,Date,Math常用函数

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();