JavaScript学习总结(11)——JS常用函数(二)
37. getElementsByClassName
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
function
var
'*' ) var
for
var
if
var
' ); for
var
if
els.push(tags); break } } } } return
} |
38. 获取页面高度
1
2
3
4
5
6
|
function
var
"BackCompat" ? : return
} |
39. 获取页面可视宽度
1
2
3
4
5
6
|
function
var
"BackCompat" ? : return
} |
40. 获取页面宽度
1
2
3
4
5
6
|
function
var
"BackCompat" ? : return
} |
41. 获取页面scrollTop
1
2
3
4
|
function
var
return
} |
42. 获取页面可视高度
1
2
3
4
5
6
|
function
var
"BackCompat" ? : return
} |
43. 去掉url前缀
1
2
3
4
5
6
7
|
function
a=a.replace(/:/g, ":" ).replace(/./g, "." ).replace(///g, "/" ); while (trim(a).toLowerCase().indexOf( "http://" )==0){ a=trim(a.replace(/http:\/\ //i,"")); } return
} |
44. 随机数时间戳
1
2
3
4
|
function
var
return
new
} |
45. 全角半角转换
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
|
//iCase: function
if ( typeof
"string"
return
} var
if (iCase){ /*半->全*/ for (i=0; iCode if (iCode iCode } else
(iCode iCode } oRs.push(String.fromCharCode(iCode)); } } else { /*全->半*/ for (i=0; iCode if (iCode iCode } else
(iCode iCode } oRs.push(String.fromCharCode(iCode)); } } return
"" ); } |
46. 确认是否键盘有效输入值
1
2
3
4
5
6
7
8
9
10
|
function
if (iKey return
;} /*空格和异常*/ if (iKey>47 return
;} /*数字*/ if (iKey>64 return
;} /*字母*/ if (iKey>95 return
;} /*数字键盘1*/ if (iKey>108 return
;} /*数字键盘2*/ if (iKey>185 return
;} /*符号1*/ if (iKey>218 return
;} /*符号2*/ return
; } |
47. 获取网页被卷去的位置
1
2
3
4
5
6
7
8
9
|
function
return
x: y: }: x: y: } } |
48. 日期格式化函数+调用方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
Date.prototype.format function (format){ var
"M+"
this .getMonth()+1, //month "d+"
this .getDate(), //day "h+"
this .getHours(), //hour "m+"
this .getMinutes(), //minute "s+"
this .getSeconds(), //second "q+"
this .getMonth()+3)/3), //quarter "S"
this .getMilliseconds() //millisecond }; if (/(y+)/.test(format)) ( this .getFullYear()+ "" ).substr(4 for ( var
in
if ( new
"(" + ")" ).test(format)) format "00" + "" + } return
} alert( new
"yyyy-MM-dd )); |
49. 时间个性化输出功能
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
32
33
34
35
36
37
38
|
/* 1、< 2、>= 3、>= 4、>= 5、>= */ function
var
new
curDate new
year month day hour minute curYear curHour timeStr; if (year timeStr '年' + '月' + '日 + ':' + } else { var
pastH if (pastH timeStr '月' + '日 + ':' + } else
(pastH timeStr '今天
':' + '分' ; } else { var
if (pastM timeStr '分钟前' ; } else { timeStr '刚刚' ; } } } return
} |
50. 解决offsetX兼容性问题
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
// eventCoord, pageCoord, offsetCoord; // pageCoord // eventCoord X Y }; // offsetCoord X Y }; return
} function
var
// // while
coord.X coord.Y element } return
} |
51. 常用的正则表达式
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
//正整数 /^[0-9]*[1-9][0-9]*$/; //负整数 /^-[0-9]*[1-9][0-9]*$/; //正浮点数 /^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$/; //负浮点数 /^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$/; //浮点数 /^(-?\d+)(\.\d+)?$/; //email地址 /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/; //url地址 /^[a-zA-z]+: //(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$/; 或:^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\ ':+!]*([^<>\"\"])*$ //年/月/日(年-月-日、年.月.日) /^(19|20)\d\d[- //匹配中文字符 /[\u4e00-\u9fa5]/; //匹配帐号是否合法(字母开头,允许5-10字节,允许字母数字下划线) /^[a-zA-Z][a-zA-Z0-9_]{4,9}$/; //匹配空白行的正则表达式 /\n\s*\r/; //匹配中国邮政编码 /[1-9]\d{5}(?!\d)/; //匹配身份证 /\d{15}|\d{18}/; //匹配国内电话号码 /(\d{3}-|\d{4}-)?(\d{8}|\d{7})?/; //匹配IP地址 /((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)/; //匹配首尾空白字符的正则表达式 /^\s*|\s*$/; //匹配HTML标记的正则表达式 < //sql ^(select|drop|delete|create|update|insert).*$ //提取信息中的网络链接 (h|H)(r|R)(e|E)(f|F) |")?(\w|\\|\/|\.)+( '|"| //提取信息中的邮件地址 \w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* //提取信息中的图片链接 (s|S)(r|R)(c|C) |")?(\w|\\|\/|\.)+('|"| //提取信息中的 (\d+)\.(\d+)\.(\d+)\.(\d+) //取信息中的中国手机号码 (86)*0*13\d{9} //提取信息中的中国邮政编码 [1-9]{1}(\d+){5} //提取信息中的浮点数(即小数) (-?\d*)\.?\d+ //提取信息中的任何数字 (-?\d*)(\.\d+)? //电话区号 ^0\d{2,3}$ //腾讯 ^[1-9]*[1-9][0-9]*$ //帐号(字母开头,允许 ^[a-zA-Z][a-zA-Z0-9_]{4,15}$ //中文、英文、数字及下划线 ^[\u4e00-\u9fa5_a-zA-Z0-9]+$ |
52. 返回顶部的通用方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
function
var
var
var
window.onscroll btn.style.display "none" ; btn.onclick function () btn.style.display "none" ; window.onscroll null ; this .timer function () d.scrollTop b.scrollTop if
}, }; function
btn.style.display 'block' : "none" } }; backTop( 'goTop' ); |
53. 获得URL中GET参数值
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
// function
querystr "?" ) if (querystr[1]){ GETs "&" ); GET for (i=0;i<GETs.length;i++){ tmp_arr "=" ) key=tmp_arr[0] GET[key] } } return
} |
54. 打开一个窗体通用方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
function
var
var
var
"Microsoft ); if
var
"resizable=1,location=no,scrollbars=no,width=" ; p p ",height=" ; p p ",left=" ; p p ",top=" ; p retval } else
var
"ZyiisPopup" , "top="
",left="
",scrollbars="
",dialog=yes,modal=yes,width="
",height="
",resizable=no"
eval( "try ); win.focus(); } } |
55. 提取页面代码中所有网址
1
2
|
var
"\']*([^\"\'\(\)\<\>\[\] \r\n ").replace(/^(src=|href=|url\()[\"\']*|[\"\'\>\) "); alert(aa); |
56. 清除相同的数组
1
2
3
4
5
6
7
8
9
10
|
String.prototype.unique= function (){ var
this .split(/[\r\n]+/); var
'' ; for ( var
if (! new
"^" +x.replace(/([^\w])/ig, "\\$1" )+ "$" , "igm" ).test(y)){ y+=x+ "\r\n" } } return
}; |
57. 按字母排序,对每行进行数组排序
1
2
3
4
5
|
function
var
"\r\n" ); //顺序 var
"\r\n" ); //反序 K1.value=K1.value!=text?text:test; } |
58. 字符串反序
function IsReverse(text){
return text.split('').reverse().join('');
}
59. 清除html代码中的脚本
1
2
3
4
5
6
7
8
9
10
11
|
function
K1.value=K1.value.replace(/<script.*?>[\s\S]*?<\/script>|\s+on[a-zA-Z]{3,16}\s?=\s? "[\s\S]*?" |\s+on[a-zA-Z]{3,16}\s?=\s? '[\s\S]*?' |\s+on[a-zA-Z]{3,16}\s?=[^ "" ); } 动态执行JavaScript脚本 function
try { eval(K1.value); } catch (e){ alert(e.message); } } |
60. 动态执行VBScript脚本
1
2
3
4
5
6
7
8
9
|
function
try { var
"K1" ).value; if (script.trim()== "" ) return ; window.execScript( 'On +script+ '\n , "vbscript" ) } catch (e){ alert(e.message); } } |
61. 金额大写转换函数
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
function
try
var
var
new
"" , "万" , "亿" ); //大单位 var
new
"拾" , "佰" , "仟" ); //小单位 var
new
"零" , "壹" , "贰" , "叁" , "肆" , "伍" , "陆" , "柒" , "捌" , "玖" ); //整数部分用 //以下是小写转换成大写显示在合计大写的文本框中 //分离整数与小数 var
var
var
//转换整数部分 var
//计小单位 var
//计大单位 var
var
"" ; var
//整数的长度 for
var
//取得某个位数上的数字 var
if
bn //取得某个位数前一位上的数字 } sum if
str //取得该数字对应的大写数字,并插入到str字符串的前面 if
'0' ) } if
//在数字范围内 if
//加小单位 if
str } k1++; } else
//不加小单位,加大单位 k1 var
if
"万"
"亿" ) //若大单位前没有数字则舍去大单位 str str sum } } if
//小单位到千则大单位进一 k2++; } } //转换小数部分 var
"" ; if
"" ) var
if
strdig "角" ; //加数字 } var
if
strdig "分" ; //加数字 } } str "元"
} catch (e) return
; } return
} //拆分整数与小数 function
var
new
'' , '' ); temp "." ); for
var
value } return
} |
62. resize的操作
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
( function (){ var
function (){ var
,r ,b ,classname if (w //当窗体的宽度小于1255的时候执行相应的操作 } else { //当窗体的宽度大于1255的时候执行相应的操作 } } if (window.addEventListener){ window.addEventListener( 'resize' , function (){ } else
(window.attachEvent){ window.attachEvent( 'onresize' , function (){ } fn(); })(); |
63. 实现base64解码
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
|
function
var
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" ; var
"" ,tmp_arr if
return
data '' ; do
h1 h2 h3 h4 bits o1 o2 o3 if
tmp_arr[ac++] } else
tmp_arr[ac++] } else
tmp_arr[ac++] } } while
dec '' ); dec return
} |
64. 实现utf8解码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
function
var
'' ; while
c1 if
tmp_arr[ac++] i++; } else
c2 tmp_arr[ac++] i } else
c2 c3 tmp_arr[ac++] i } } return
'' ); } |
65. 获取窗体可见范围的宽与高
1
2
3
4
5
6
7
|
function
var
var
var
var
return
} |
66. 断鼠标是否移出事件
1
2
3
4
5
6
7
8
9
10
|
function
if
'mouseout' ) return
; } var
'mouseout'
while
reltg } return
} |
67. 半角转换为全角函数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
function
var
'' ; for ( var
code if (code result } else
result } else { result } } return
} |
68. 全角转换为半角函数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
function
var
'' ; for ( var
code if (code result } else
result } else { result } } return
} |
JavaScript学习总结(11)——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 ...
- js常用函数大全107个
1.document.write(""); 输出语句 2.JS中的注释为// 3.传统的HTML文档顺序是:document->html->(head,body) 4. ...
- salesforce lightning零基础学习(九) Aura Js 浅谈二: Event篇
上一篇介绍了Aura Framework中 Component类的部分方法,本篇将要介绍Event常用的方法. 1. setParam (String key , Object value):设置事件 ...
- JavaScript学习总结-技巧、实用函数、简洁方法、编程细节
整理JavaScript方面的一些技巧,比较实用的函数,常见功能实现方法,仅作参考 变量转换 var myVar = "3.14159", str = ""+ ...
- 性能测试学习第二天-----loadrunner常用函数大全及设置项
常用函数大全: 1,C语言参数转web参数 lr_save_string("aaa","param"):将字符串“aaa”或者一个字符串变量,转变成LR的参数{ ...
随机推荐
- es6 学习1 let表示变量 、const表示常量 与 var 变量的区别
一.let 1.看下代码,在函数中无论在哪里声明变量,都会自动提到函数顶部,这就是函数变量提升,它的作用于为当前函数中. function aa() { if(bool) { var test = ' ...
- HDU-1878 欧拉回路 欧拉回路
题目链接:https://cn.vjudge.net/problem/HDU-1878 题意 中文题,而且就是单纯的欧拉回路 思路 判断连通图 用并查集会很好,bfs亦可 一时脑抽用bfs过了这个题, ...
- [NOIP2009提高组]靶形数独
题目:洛谷P1074.Vijos P1755.codevs1174. 题目大意:给你一个数独,让你填完这个数独,并要求得分最大,问这个得分是多少(不能填完输出-1). 每个格子的得分是当前格子所填的数 ...
- caioj 1080 动态规划入门(非常规DP4:乘电梯)(dp数组更新其他量)
我一开始是这么想的 注意这道题数组下标是从大到小推,不是一般的从小到大推 f[i]表示从最高层h到第i层所花的最短时间,答案为f[1] 那么显然 f[i] = f[j] + wait(j) + (j ...
- Unity Shader (五)Surface Shader示例
1.替换颜色 Shader "Custom/Example_Frag_5" { Properties { _MainTex ("Albedo (RGB)", 2 ...
- 今天听说了一个压缩解压整型的方式-group-varint
group varint https://github.com/facebook/folly/blob/master/folly/docs/GroupVarint.md 这个是facebook的实现 ...
- POJ - 3984 - 迷宫问题 (DFS)
迷宫问题 Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 10936 Accepted: 6531 Description ...
- java无依赖读取Excel文件
说到Java读取Excel文件,用得多的当然是POI或jxls,但今天在看一本书的时候.当中提到使用JdbcOdbcDriver这个驱动类在不依赖第三方库的情况下也能够完毕对Excel文件的读取操作, ...
- 设计模式之Flyweight模式(笔记)
享元模式:运用共享技术有效地支持大量细粒度的对象. 适用场合:假设一个应用程序适用了大量的对象.而大量的这些对象造成了非常大的存储开销时就应该考虑使用. 首先定义一个IFlyweight接口 publ ...
- (iOS)确保设置话筒模式成功 AudioSessionSetProperty
本人编写过一个应用,须要把实时音频播放出来,而且要从话筒播放声音,为此,作下面操作: //Step 1: 初始化 AudioSessionInitialize(NULL,NULL, NULL, sel ...