JavaScript学习总结(9)——JS常用函数(一)
本文中,收集了一些比较常用的Javascript函数,希望对学习JS的朋友们有所帮助。
1. 字符串长度截取
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
function
var
icount patrn strre "" ; for
var
if
temp if
null ) icount } else
icount } strre } else
break ; } } return
"..." } |
2. 替换全部
1
2
3
|
String.prototype.replaceAll function (s1, return
.replace( new
"gm" ), } |
3. 清除空格
1
2
3
4
|
String.prototype.trim function () var
return
.replace(reExtraSpace, "$1" ) } |
4. 清除左空格/右空格
1
2
|
function
return
"" ); function
return
"" ); |
5. 判断是否以某个字符串开头
1
2
3
|
String.prototype.startWith function
return
.indexOf(s) } |
6. 判断是否以某个字符串结束
1
2
3
4
|
String.prototype.endWith function
var
this .length return
this .lastIndexOf(s) } |
7. 转义html标签
1
2
3
|
function
return
'&' ).replace(/\ "/g, ').replace(/</g, '<' ).replace(/>/g, '>' ) } |
8. 时间日期格式转换
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
Date.prototype.Format function (formatStr) var
var
'日' , '一' , '二' , '三' , '四' , '五' , '六' ]; str this .getFullYear()); str this .getYear() this .getYear() '0'
this .getYear() str this .getMonth() this .getMonth() '0'
this .getMonth() str this .getMonth() str this .getDay()]); str this .getDate() this .getDate().toString() '0'
this .getDate()); str this .getDate()); str this .getHours() this .getHours().toString() '0'
this .getHours()); str this .getHours()); str this .getMinutes() this .getMinutes().toString() '0'
this .getMinutes()); str this .getMinutes()); str this .getSeconds() this .getSeconds().toString() '0'
this .getSeconds()); str this .getSeconds()); return
} |
9. 判断是否为数字类型
1
2
3
4
5
6
7
8
|
function
var
if
null
"" ) return
} else
return
} } |
10. 设置cookie值
1
2
3
4
5
6
7
8
9
|
function
var
new
var
var
var
var
new
exp.setTime(exp.getTime() document.cookie "="
";path=/;expires="
";domain=360doc.com;" } |
11. 获取cookie值
1
2
3
4
5
|
function
var
new
"(^|
"=([^;]*)(;|$)" )); if
null ) return
return
} |
12. 加入收藏夹
1
2
3
4
5
6
7
8
9
10
11
|
function
try
window.external.addFavorite(sURL, } catch (e) try
window.sidebar.addPanel(sTitle, "" ) } catch (e) alert( "加入收藏失败,请使用Ctrl+D进行添加" ) } } } |
13. 设为首页
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
function
if
document.body.style.behavior 'url(#default#homepage)' ; document.body.setHomePage( 'http://w3cboy.com' ) } else
if
try
netscape.security.PrivilegeManager.enablePrivilege( "UniversalXPConnect" ) } catch (e) alert( "该操作被浏览器拒绝,如果想启用该功能,请在地址栏内输入 ) } } var
'@mozilla.org/preferences-service;1' ].getService(Components.interfaces.nsIPrefBranch); prefs.setCharPref( 'browser.startup.homepage' , 'http://w3cboy.com' ) } } |
14. 加载样式文件
1
2
3
4
5
6
7
8
9
10
11
12
|
function
try
document.createStyleSheet(url) } catch (e) var
'link' ); cssLink.rel 'stylesheet' ; cssLink.type 'text/css' ; cssLink.href var
'head' )[0]; head.appendChild(cssLink) } } |
15. 返回脚本内容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
function
if (s.indexOf( '<script' ) return
var
var
while (arr var
var
arr1 if (arr1) appendscript(arr1[1], '' , } else
p1 arr1 appendscript( '' , 'reload=' ) } } return
} |
16. 清除脚本内容
1
2
3
|
function
return
'' ); } |
17. 动态加载脚本文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
function
var
if (!reload return ; if (reload $(id).parentNode.removeChild($(id)); } evalscripts.push(id); var
"script" ); scriptNode.type "text/javascript" ; scriptNode.id scriptNode.charset try
if (src) scriptNode.src scriptNode.onloadDone false ; scriptNode.onload function
scriptNode.onloadDone true ; JSLOADED[src] }; scriptNode.onreadystatechange function
if ((scriptNode.readyState 'loaded'
'complete' ) scriptNode.onloadDone true ; JSLOADED[src] } }; } else
(text){ scriptNode.text } document.getElementsByTagName( 'head' )[0].appendChild(scriptNode); } catch (e) } |
18. 返回按ID检索的元素对象
function $(id) {
return !id ? null : document.getElementById(id);
}
19. 跨浏览器绑定事件
1
2
3
4
5
6
7
8
9
10
|
function
if (!oTarget){ return ;} if
obj.addEventListener(evt, false ); } else
(obj.attachEvent){ obj.attachEvent( 'on' +evt,fn); } else { oTarget[ "on"
} } |
20. 跨浏览器删除事件
1
2
3
4
5
6
7
8
9
10
|
function
if (!obj){ return ;} if (obj.addEventListener){ obj.addEventListener(evt,fn, false ); } else
(oTarget.attachEvent){ obj.attachEvent( "on"
} else { obj[ "on"
} } |
21. 为元素添加on方法
1
2
3
4
5
6
7
8
|
Element.prototype.on NodeList.prototype.on function
[][ 'forEach' ].call( this , function
el.on(event, }); return
; }; |
22. 为元素添加trigger方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
Element.prototype.trigger function
var
'HTMLEvents' ); event.initEvent(type, true , true ); event.data event.eventName event.target this ; this .dispatchEvent(event); return
; }; NodeList.prototype.trigger function
[][ 'forEach' ].call( this , function
el[ 'trigger' ](event); }); return
; }; |
23. 检验URL链接是否有效
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
function
var
new
"microsoft.xmlhttp" ); xmlhttp.Open( "GET" ,URL, false ); try { xmlhttp.Send(); } catch (e){ }finally{ var
if (result){ if (xmlhttp.Status==200){ return ( true ); } else { return ( false ); } } else { return ( false ); } } } |
24. 格式化CSS样式代码
1
2
3
4
5
6
7
8
9
|
function
//格式化代码 s "$1" ); s ";" ); //清除连续分号 s #\d]*{/g, s "$1 ); s "$1\n}\n$2" ); s "$1;\n\t$2" ); return
} |
25. 压缩CSS样式代码
1
2
3
4
5
6
7
8
|
function
//压缩代码 s //g, s "$1" ); s #\d]*\{/g, s ";" ); //清除连续分号 s //去掉首尾空白 return
null ) ""
} |
26. 获取当前路径
1
2
3
4
5
6
|
var
"" ; if
typeof
.href "undefined" ) currentPageUrl } else
currentPageUrl this .href.toString().toLowerCase(); } |
27. 判断是否移动设备
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
function
if
typeof
._isMobile 'boolean' ){ return
._isMobile; } var
this .getScreenWidth(); var
var
"new" ); if (!fixViewPortsExperiment){ if (! this .isAppleMobileDevice()){ screenWidth } } var
var
false ; this ._isMobile this .isTouchScreen(); return
._isMobile; } |
28. 判断是否移动设备访问
1
2
3
|
function
return
} |
29. 判断是否苹果移动设备访问
1
2
3
|
function
return
} |
30. 判断是否安卓移动设备访问
1
2
3
|
function
return
} |
31. 判断是否Touch屏幕
1
2
3
|
function
return
'ontouchstart'
instanceof
} |
32. 判断是否打开视窗
1
2
3
|
function
return
'wixMobileViewport' ); } |
33. 获取移动设备初始化大小
1
2
3
4
5
6
7
8
9
10
|
function
if (! this ._initZoom){ var
if ( this .isAndroidMobileDevice() this .isNewChromeOnAndroid()){ screenWidth } this ._initZoom } return
._initZoom; } |
34. 获取移动设备最大化大小
1
2
3
4
5
6
7
8
9
10
11
12
13
|
function
var
if ( this .isAndroidMobileDevice() this .isNewChromeOnAndroid()){ screenWidth } var
var
"New"
"new" ); if (FixViewPortsExperimentRunning){ return
} else { return
} } |
35. 获取移动设备屏幕宽度
1
2
3
4
5
6
7
8
9
10
11
|
function
var
var
var
"new" ); if (fixViewPortsExperiment){ if ( this .isAndroidMobileDevice() this .isNewChromeOnAndroid()){ smallerSide } } return
} |
36. 完美判断是否为网址
1
2
3
4
5
6
7
8
|
function
var
if
return
; } else
return
; } } |
JavaScript学习总结(9)——JS常用函数(一)的更多相关文章
- JavaScript的使用以及JS常用函数(JS 遍历数组和集合)
JavaScript入门 学习总结 1. 什么是 JavaScript 2. JavaScript 的特点 3. JS的使用 编写位置 基本语法 变量 打印变量 数据类型 innerHTML和inne ...
- ecshop里提出来的js常用函数
目录 Utils.js jquery.listTable.js 使用例子: ecshop里提出来的js常用函数 Utils.js /* $Id : utils.js 5052 2007-02-03 1 ...
- 总结js常用函数和常用技巧(持续更新)
学习和工作的过程中总结的干货,包括常用函数.常用js技巧.常用正则表达式.git笔记等.为刚接触前端的童鞋们提供一个简单的查询的途径,也以此来缅怀我的前端学习之路. PS:此文档,我会持续更新. Aj ...
- js常用函数和常用技巧
学习和工作的过程中总结的干货,包括常用函数.常用js技巧.常用正则表达式.git笔记等.为刚接触前端的童鞋们提供一个简单的查询的途径,也以此来缅怀我的前端学习之路. PS:此文档,我会持续更新. Aj ...
- Javascript学习记录——原生JS实现旋转木马特效
昨天学习到了JS特效部分,然后老师讲了旋转木马特效的实现,如上图.不过只是讲了通过点击箭头实现图片的切换,对于点击图片本身以及二者联动却是没有讲解. 本着一颗追求完美的心,今天花费了一个中午终于将整个 ...
- JavaScript学习总结-技巧、有用函数、简洁方法、编程细节
整理JavaScript方面的一些技巧.比較有用的函数,常见功能实现方法,仅作參考 变量转换 //edit http://www.lai18.com var myVar = "3.14159 ...
- JavaScript学习总结-技巧、实用函数、简洁方法、编程细节
整理JavaScript方面的一些技巧,比较实用的函数,常见功能实现方法,仅作参考 变量转换 var myVar = "3.14159", str = ""+ ...
- 性能测试学习第二天-----loadrunner常用函数大全及设置项
常用函数大全: 1,C语言参数转web参数 lr_save_string("aaa","param"):将字符串“aaa”或者一个字符串变量,转变成LR的参数{ ...
- JavaScript学习总结(11)——JS常用函数(二)
37. getElementsByClassName ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 function getElementsByClassName( ...
随机推荐
- 在angular4.X里使用mCustomScrollbar滚动条插件
参考网上的方法https://stackoverflow.com/questions/36755625/how-to-import-jquery-and-mcustomscrollbar-plugin ...
- Python学习笔记(3)--数据结构之列表list
Python的数据结构有三种:列表.元组和字典 列表(list) 定义:list是处理一组有序项目的数据结构,是可变的数据结构. 初始化:[], [1, 3, 7], ['a', 'c'], [1, ...
- arcgis engine 获取高亮Feature、element
转自原文 arcgis engine 获取高亮Feature.element IGraphicsContainer pGraphicsC = mainAxMapControl.Map as IGra ...
- 书剑恩仇录online全套源代码(服务端+client+文档)
书剑恩仇录online全套源代码(服务端+client+文档).vc++开发,解压后将近10G大小,眼下网上最完整版本号,包括client源代码.服务端源代码.工具源代码.sdk.文档-- <书 ...
- Design Pattern Adaptor 适配器设计模式
适配器设计模式是为了要使用一个旧的接口,或许这个接口非常难用,或许是和新的更新的接口不兼容,所以须要设计一个适配器类,然后就能够让新旧的接口都统一. 就是这种一个图: watermark/2/text ...
- BZOJ1045: [HAOI2008]糖果传递&BZOJ1465: 糖果传递&BZOJ3293: [Cqoi2011]分金币
[传送门:BZOJ1045&BZOJ1465&BZOJ3293] 简要题意: 给出n个数,每个数每次可以-1使得左边或者右边的数+1,代价为1,求出使得这n个数相等的最小代价 题解: ...
- git如何从远程非master分支更新到本地对应分支
git如何从远程非master分支更新到本地对应分支 自己实例 正确步骤 如果本地有分支,那就删除本地分支 删除本地分支::git branch -d 2018_4_18_second 切换分支: g ...
- HDU 5371 Hotaru's problem Manacher+尺取法
题意:给你一个序列,求最长的两段回文子串,要求他们共用中间的一半. 思路:利用Manacher求出p[i]表示的当前位置的最长回文串长度,然后把每一个长度大于等于2的回文串的左区间和右区间分别放到两个 ...
- xfce4 + docky ,docky 上面那透明的一条黑色横线去掉方法
在安装完Debian 9 + xfce4桌面后 ,添加docky启动后,会在docky 上面有一条黑色横线看起来非常不舒服. 去掉方法:设置管理器->窗口管理器微调->合成器->取消 ...
- 织梦DedeCMS判断简略标题为空时则显示完整标题
使用织梦DedeCMS系统程序开发网站中,我们会遇到很多因网页版面设计限定的宽度,使文章标题需要进行字数限制,通常做法是在a标签中加入一个title属性,让鼠标放上去的时候显示完整标题.但是标题被剪裁 ...