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( ...
随机推荐
- 关于element-ui框架里面table组件的使用
1.表格的数据放哪里:后台返回的列表数据放到:data后面. 2.每一个列怎么显示数据:返回的列表里面的属性想要在列显示出来,将对应的字段名写到prop后面就行. 3.列表上面想显示序号:{{scop ...
- NodeJS学习笔记 进阶 (13)Nodejs进阶:5分钟入门非对称加密用法
个人总结:读完这篇文章需要5分钟,这篇文章讲解了Node.js非对称加密算法的实现. 摘录自网络 地址: https://github.com/chyingp/nodejs-learning-guid ...
- 人在IT,关于计算机专业的杂谈PPT
- 题解 CF1037D 【Valid BFS?】
不管怎么说,这都不是道紫题吧... 这里采用的思想有点类似轻重链剖分. 我们按照每个节点在序列里面出现的顺序,把每一个节点连出去的边都排一个序. 这样(如果序列没错)肯定会按照序列的方式遍历完全图. ...
- js实现复选框的操作-------Day41
不知道之前的一篇为什么一直处于审核阶段.难道有哪个词语是敏感词被河蟹了? 无论了,又一次写了这篇,也算是加深记忆吧. 首先要写的是今天在进行表格数据操作时用到的对复选框checkbox的全选和全不选, ...
- [Android随笔]内存泄漏以及内存溢出
名词解释 内存泄漏:memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄漏危害能够忽略,但内存泄漏堆积后果非常严重,不管多少内存,迟早会被占光. 内存溢出:out of ...
- Android页面事件挂接模拟
Java没有C#的引用类型.因此事件的挂接一般都是利用接口来实现,有两种方式: 1)定义一个实现事件接口的类,然后实现接口方法,然后通过将这个类的实例加入到事件监听器里面: public class ...
- vue15 自定义元素指令、标签指令
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- vue --- cli build 后的项目,图片路径出错
今天在插入背景图片过程中,遇到了路径错误的问题,通过网上查询,找到了解决的办法,但是大部分都没有讲造成这种问题的原因,故我简单地总结了一下,并加入了一些自己的理解,欢迎共同探讨~ 当用vue-cli自 ...
- Linux下大型容量件的切割与合并
Linux下大型容量件的切割与合并 当前目录下有sp4.exe文件容量129M我用64的U盘把spe.exe考到另一台机器上#split -b 60m sp4.exe-b, --bytes=SIZE ...