javascript函数使用技巧集合.docx

上传人:b****8 文档编号:9820006 上传时间:2023-05-21 格式:DOCX 页数:17 大小:21.25KB
下载 相关 举报
javascript函数使用技巧集合.docx_第1页
第1页 / 共17页
javascript函数使用技巧集合.docx_第2页
第2页 / 共17页
javascript函数使用技巧集合.docx_第3页
第3页 / 共17页
javascript函数使用技巧集合.docx_第4页
第4页 / 共17页
javascript函数使用技巧集合.docx_第5页
第5页 / 共17页
javascript函数使用技巧集合.docx_第6页
第6页 / 共17页
javascript函数使用技巧集合.docx_第7页
第7页 / 共17页
javascript函数使用技巧集合.docx_第8页
第8页 / 共17页
javascript函数使用技巧集合.docx_第9页
第9页 / 共17页
javascript函数使用技巧集合.docx_第10页
第10页 / 共17页
javascript函数使用技巧集合.docx_第11页
第11页 / 共17页
javascript函数使用技巧集合.docx_第12页
第12页 / 共17页
javascript函数使用技巧集合.docx_第13页
第13页 / 共17页
javascript函数使用技巧集合.docx_第14页
第14页 / 共17页
javascript函数使用技巧集合.docx_第15页
第15页 / 共17页
javascript函数使用技巧集合.docx_第16页
第16页 / 共17页
javascript函数使用技巧集合.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

javascript函数使用技巧集合.docx

《javascript函数使用技巧集合.docx》由会员分享,可在线阅读,更多相关《javascript函数使用技巧集合.docx(17页珍藏版)》请在冰点文库上搜索。

javascript函数使用技巧集合.docx

javascript函数使用技巧集合

字符串(String)

1.声明

varmyString=newString("Everygoodboydoesfine.");

varmyString="Everygoodboydoesfine.";

2.字符串连接

varmyString="Every"+"goodboy"+"doesfine.";

varmyString="Every";myString+="goodboydoesfine.";

3.截取字符串

//截取第6位开始的字符

varmyString="Everygoodboydoesfine.";

varsection=myString.substring(6);//结果:

"goodboydoesfine."

//截取第0位开始至第10位为止的字符

varmyString="Everygoodboydoesfine.";

varsection=myString.substring(0,10);//结果:

"Everygood"

//截取从第11位到倒数第6位为止的字符

varmyString="Everygoodboydoesfine.";

varsection=myString.slice(11,-6);//结果:

"boydoes"

//从第6位开始截取长度为4的字符

varmyString="Everygoodboydoesfine.";

varsection=myString.substr(6,4);//结果:

"good"

4.转换大小写

varmyString="Hello";

varlcString=myString.toLowerCase();//结果:

"hello"

varucString=myString.toUpperCase();//结果:

"HELLO"

5.字符串比较

varaString="Hello!

";

varbString=newString("Hello!

");

if(aString=="Hello!

"){}//结果:

true

if(aString==bString){}//结果:

true

if(aString===bString){}//结果:

false(两个对象不同,尽管它们的值相同)

6.检索字符串

varmyString="helloeverybody.";

//如果检索不到会返回-1,检索到的话返回在该串中的起始位置

if(myString.indexOf("every")>-1){}//结果:

true

7.查找替换字符串

varmyString="Iisyourfather.";

varresult=myString.replace("is","am");//结果:

"Iamyourfather."

8.特殊字符:

b:

后退符t:

水平制表符

n:

换行符v:

垂直制表符

f:

分页符r:

回车符

":

双引号':

单引号

\:

反斜杆

9.将字符转换成Unicode编码

varmyString="hello";

varcode=myString.charCodeAt(3);//返回"l"的Unicode编码(整型)

varchar=String.fromCharCode(66);//返回Unicode为66的字符

10.将字符串转换成URL编码

varmyString="helloall";

varcode=encodeURI(myString);//结果:

"hello%20all"

varstr=decodeURI(code);//结果:

"helloall"

//相应的还有:

encodeURIComponent()decodeURIComponent()

11.将字符串转换成base64编码

//base64Encode()base64Decode()用法同上

//-----------------------------------------------------------------------

·数字型(Number)

1.声明

vari=1;

vari=newNumber

(1);

2.字符串与数字间的转换

vari=1;

varstr=i.toString();//结果:

"1"

varstr=newString(i);//结果:

"1"

i=parseInt(str);//结果:

1

i=parseFloat(str);//结果:

1.0

//注意:

parseInt,parseFloat会把一个类似于"32G"的字符串,强制转换成32

3.判断是否为有效的数字

vari=123;varstr="string";

if(typeofi=="number"){}//true

//某些方法(如:

parseInt,parseFloat)会返回一个特殊的值NaN(NotaNumber)

//请注意第2点中的[注意],此方法不完全适合判断一个字符串是否是数字型!

!

i=parseInt(str);

if(isNaN(i)){}

4.数字型比较

//此知识与[字符串比较]相同

5.小数转整数

varf=1.5;

vari=Math.round(f);//结果:

2(四舍五入)

vari=Math.ceil(f);//结果:

2(返回大于f的最小整数)

vari=Math.floor(f);//结果:

1(返回小于f的最大整数)

6.格式化显示数字

vari=3.14159;

//格式化为两位小数的浮点数

varstr=i.toFixed

(2);//结果:

"3.14"

//格式化为五位数字的浮点数(从左到右五位数字,不够补零)

varstr=i.toPrecision(5);//结果:

"3.1415"

7.X进制数字的转换

//不是很懂-.-

vari=parseInt("0x1f",16);

vari=parseInt(i,10);

vari=parseInt("11010011",2);

8.随机数

//返回0-1之间的任意小数

varrnd=Math.random();

//返回0-n之间的任意整数(不包括n)

varrnd=Math.floor(Math.random()*n)

//-----------------------------------------------------------------------

·Math对象

1.Math.abs(num):

返回num的绝对值

2.Math.acos(num):

返回num的反余弦值

3.Math.asin(num):

返回num的反正弦值

4.Math.atan(num):

返回num的反正切值

5.Math.atan2(y,x):

返回y除以x的商的反正切值

6.Math.ceil(num):

返回大于num的最小整数

7.Math.cos(num):

返回num的余弦值

8.Math.exp(x):

返回以自然数为底,x次幂的数

9.Math.floor(num):

返回小于num的最大整数

10.Math.log(num):

返回num的自然对数

11.Math.max(num1,num2):

返回num1和num2中较大的一个

12.Math.min(num1,num2):

返回num1和num2中较小的一个

13.Math.pow(x,y):

返回x的y次方的值

14.Math.random():

返回0到1之间的一个随机数

15.Math.round(num):

返回num四舍五入后的值

16.Math.sin(num):

返回num的正弦值

17.Math.sqrt(num):

返回num的平方根

18.Math.tan(num):

返回num的正切值

19.Math.E:

自然数(2.718281828459045)

20.Math.LN2:

2的自然对数(0.6931471805599453)

21.Math.LN10:

10的自然对数(2.302585092994046)

22.Math.LOG2E:

log2为底的自然数(1.4426950408889634)

23.Math.LOG10E:

log10为底的自然数(0.4342944819032518)

24.Math.PI:

π(3.141592653589793)

25.Math.SQRT1_2:

1/2的平方根(0.7071067811865476)

26.Math.SQRT2:

2的平方根(1.4142135623730951)

//-----------------------------------------------------------------------

·日期型(Date)

1.声明

varmyDate=newDate();//系统当前时间

varmyDate=newDate(yyyy,mm,dd,hh,mm,ss);

varmyDate=newDate(yyyy,mm,dd);

varmyDate=newDate("monthNamedd,yyyyhh:

mm:

ss");

varmyDate=newDate("monthNamedd,yyyy");

varmyDate=newDate(epochMilliseconds);

2.获取时间的某部份

varmyDate=newDate();

myDate.getYear();//获取当前年份(2位)

myDate.getFullYear();//获取完整的年份(4位,1970-?

?

?

?

myDate.getMonth();//获取当前月份(0-11,0代表1月)

myDate.getDate();//获取当前日(1-31)

myDate.getDay();//获取当前星期X(0-6,0代表星期天)

myDate.getTime();//获取当前时间(从1970.1.1开始的毫秒数)

myDate.getHours();//获取当前小时数(0-23)

myDate.getMinutes();//获取当前分钟数(0-59)

myDate.getSeconds();//获取当前秒数(0-59)

myDate.getMilliseconds();//获取当前毫秒数(0-999)

myDate.toLocaleDateString();//获取当前日期

myDate.toLocaleTimeString();//获取当前时间

myDate.toLocaleString();//获取日期与时间

3.计算之前或未来的时间

varmyDate=newDate();

myDate.setDate(myDate.getDate()+10);//当前时间加10天

//类似的方法都基本相同,以set开头,具体参考第2点

4.计算两个日期的偏移量

vari=daysBetween(beginDate,endDate);//返回天数

vari=beginDate.getTimezoneOffset(endDate);//返回分钟数

5.检查有效日期

//checkDate()只允许"mm-dd-yyyy"或"mm/dd/yyyy"两种格式的日期

if(checkDate("2006-01-01")){}

//正则表达式(自己写的检查yyyy-mm-dd,yy-mm-dd,yyyy/mm/dd,yy/mm/dd四种)

varr=/^(d{2}|d{4})[/-]d{1,2}[/-]d{1,2}$/;

if(r.test(myString)){}

//-----------------------------------------------------------------------

·数组(Array)

1.声明

vararr=newArray();//声明一个空数组

vararr=newArray(10);//声明一个10个长度的数组

vararr=newArray("Alice","Fred","Jean");//用值初始化数组

vararr=["Alice","Fred","Jean"];//用值初始化数组

vararr=[["A","B","C"][1,2,3]];//声明一个二(多)维数组

2.数组的访问

arr[0]="123";//赋值

varstr=arr[0];//获取

arr[0][0]="123";//多维数组赋值

3.数组与字符串间的转换

vararr=["A","B","C","D"];//声明

//数组按分隔符转换成字符串

varstr=arr.join("|");//结果:

"A|B|C|D"

//字符串切割成数组

arr=str.split("|");

4.遍历数组

for(vari=0;i

5.排序

vararr=[12,15,8,9];

arr.sort();//结果:

891215

6.组合与分解数组

vararr1=["A","B","C","D"];

vararr2=["1","2","3","4"];

//奖两个数组组合成一个新的数组

vararr=arr1.concat(arr2);//结果:

["A","B","C","D","1","2","3","4"]

//将一个数组切成两个数组(参数1:

起始索引,参数2:

切割长度)

vararr3=arr.splice(1,3);//结果:

arr3:

["B","C","D"]arr["A","1","2","3","4"]

//将一个数组切成两个数组,并在原数组补新值

vararr4=arr.splice(1,3,"AA");//结果:

arr4:

["B","C","D"]arr["A","AA","1","2","3","4"]

//-----------------------------------------------------------------------

·自定义对象

1.声明:

functionmyUser(uid,pwd){

this.uid=uid;

this.pwd=pwd||"000000";//默认值

this.show=showInfo;//方法

}

//下面的函数不是自定义对象,是自定义对象的方法.继续看下去就明白了

functionshowInfo(){

alert("用户名:

"+this.uid+",密码:

"+this.pwd)

}

2.实例化:

varuser=newmyUser("user","123456");

varuser={uid:

"user",pwd:

"123456"};

3.获取与设置

alert("用户名是:

"+user.uid);//get

user.uid="newuser";//set

user.show();//调用show()方法

//-----------------------------------------------------------------------

·变量函数流程控制

1.变量

vari=1;

vari=1,str="hello";

2.函数

functionfunName(){

//dosomething.

}

functionfunName(param1[,paramX]){

//dosomething.

}

3.嵌套函数

//某种情况,你需要创建一个函数本身所独有的函数.

functionmyFunction(){

//dosomething.

privateFunction();

functionprivateFunction(){

//dosomething.

}

}

4.匿名函数

vartmp=function(){alert("onlytest.");}

tmp();

5.延迟函数调用

vartId=setTimeout("myFun()",1000);//延迟1000毫秒后再调用myFun()函数

fucntionmyFun(){

//dosomething

clearTimeout(tId);//销毁对象

}

6.流程控制

if(condition){}

if(condition){}else{}

if(condition){}elseif(condition){}else{}

switch(expression){

casevalA:

statement;break;

casevalB:

statement;break;

default:

statement;break;

}

7.异常捕获

try{expression}catch(e){}finally{}

//不处理任何异常

window.onerror=doNothing;

functiondoNothing(){returntrue;}

//异常类可用的属性

description:

异常描述(IE,NN)

fileName:

异常页面URI(NN)

lineNumber:

异常行数(NN)

message:

异常描述(IE,NN)

name:

错误类型(IE,NN)

number:

错误代码(IE)

//错误信息(兼容所有浏览器)

try{}

catch(e){

varmsg=(e.message)?

e.message:

e.description;

alert(msg);

}

8.加快脚本的执行速度

-避免使用eval()函数

-避免使用with关键字

-将重复的表达式赋值精简到最小

-在较大的对象中使用索引来查找数组

-减少document.write()的使用

//-----------------------------------------------------------------------

·浏览器特征(navigator)

1.浏览器名称

//IE:

"MicrosoftInternetExplorer"

//NS:

"Netscape"

varbrowserName=navigator.appName;

2.浏览器版本

barbrowserVersion=navigator.appVersion;

3.客户端操作系统

varisWin=(navigator.userAgent.indexOf("Win")!

=-1);

varisMac=(navigator.userAgent.indexOf("Mac")!

=-1);

varisUnix=(navigator.userAgent.indexOf("X11")!

=-1);

4.判断是否支持某对象,方法,属性

//当一个对象,方法,属性未定义时会返回undefined或null等,这些特殊值都是false

if(document.images){}

if(document.getElementById){}

5.检查浏览器当前语言

if(navigator.userLanguage){varl=navigator.userLanguage.toUpperCase();}

6.检查浏览器是否支持Cookies

if(navigator.cookieEnabled){}

//-----------------------------------------------------------------------

·控制浏览器窗口(window)

1.设置浏览器的大小

window.resizeTo(800,600);//将浏览器调整到800X600大小

window.resizeBy(50,-10);//在原有大小上改变增大或减小窗口大小

2.调整浏览器的位置

window.moveTo(10,20);//将浏览器的位置定位到X:

10Y:

20

window.moveBy(0,10);//在原有位置上移动位置(偏移量)

3.创建一个新的窗口

varwin=window.open("about.htm","winName","height=300,width=400");

//参数

alwaysLowered//始终在其它浏览器窗口的后面(NN)

alwaysRaised//始终在其它浏览器窗口的前面(NN)

channelMode//是否为导航模式(IE)

copyhistory//复制历史记录至新开的窗口(NN)

dependent//新窗口随打开它的主窗口关闭而关闭(NN)

fullscreen//全屏模式(所有相关的工具栏都没有)(IE)

location//是否显示地址栏(NN,IE)

menubar//是否显示菜单栏(NN,IE)

scrollbars//是否显示滚动条(NN,IE)

status//是否显示状态栏(NN,IE)

toolbar//是否显示工具栏(NN,IE

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2