首先在这里要非常感谢无私分享作品的网友们,这些代码片段主要由网友们平时分享的作品代码里面和经常去逛网站然后查看源文件收集到的。把平时网站上常用的一些实用功能代码片段通通收集起来,方便网友们学习使用,利用好的话可以加快网友们的开发速度,提高工作效率。
1、原生JavaScript实现字符串长度截取
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
function
cutstr(str, len) {
var
temp;
var
icount = 0;
var
patrn = /[^\x00-\xff]/;
var
strre =
""
;
for
(
var
i = 0; i < str.length; i++) {
if
(icount < len - 1) {
temp = str.substr(i, 1);
if
(patrn.exec(temp) ==
null
) {
icount = icount + 1
}
else
{
icount = icount + 2
}
strre += temp
}
else
{
break
}
}
return
strre +
"..."
}
|
2、原生JavaScript获取域名主机
1
2
3
4
5
6
7
8
9
10
11
12
|
function
getHost(url) {
var
host =
"null"
;
if
(
typeof
url ==
"undefined"
||
null
== url) {
url = window.location.href;
}
var
regex = /^\w+\:\/\/([^\/]*).*/;
var
match = url.match(regex);
if
(
typeof
match !=
"undefined"
&&
null
!= match) {
host = match[1];
}
return
host;
}
|
3、原生JavaScript清除空格
1
2
3
4
|
String.prototype.trim =
function
() {
var
reExtraSpace = /^\s*(.*?)\s+$/;
return
this
.replace(reExtraSpace,
"$1"
)
}
|
4、原生JavaScript替换全部
1
2
3
|
String.prototype.replaceAll =
function
(s1, s2) {
return
this
.replace(
new
RegExp(s1,
"gm"
), s2)
}
|
5、原生JavaScript转义html标签
1
2
3
|
function
HtmlEncode(text) {
return
text.replace(/&/g,
'&'
).replace(/\"/g,
'"'
).replace(/
}
|
6、原生JavaScript还原html标签
1
2
3
|
function
HtmlDecode(text) {
return
text.replace(/&/g,
'&'
).replace(/"/g,
'\"'
).replace(/</g,
'<'
).replace(/>/g,
'>'
)
}
|
7、原生JavaScript时间日期格式转换
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
Date.prototype.Format =
function
(formatStr) {
var
str = formatStr;
var
Week = [
'日'
,
'一'
,
'二'
,
'三'
,
'四'
,
'五'
,
'六'
];
str = str.replace(/yyyy|YYYY/,
this
.getFullYear());
str = str.replace(/yy|YY/, (
this
.getYear() % 100) > 9 ? (
this
.getYear() % 100).toString() :
'0'
+ (
this
.getYear() % 100));
str = str.replace(/MM/, (
this
.getMonth() + 1) > 9 ? (
this
.getMonth() + 1).toString() :
'0'
+ (
this
.getMonth() + 1));
str = str.replace(/M/g, (
this
.getMonth() + 1));
str = str.replace(/w|W/g, Week[
this
.getDay()]);
str = str.replace(/dd|DD/,
this
.getDate() > 9 ?
this
.getDate().toString() :
'0'
+
this
.getDate());
str = str.replace(/d|D/g,
this
.getDate());
str = str.replace(/hh|HH/,
this
.getHours() > 9 ?
this
.getHours().toString() :
'0'
+
this
.getHours());
str = str.replace(/h|H/g,
this
.getHours());
str = str.replace(/mm/,
this
.getMinutes() > 9 ?
this
.getMinutes().toString() :
'0'
+
this
.getMinutes());
str = str.replace(/m/g,
this
.getMinutes());
str = str.replace(/ss|SS/,
this
.getSeconds() > 9 ?
this
.getSeconds().toString() :
'0'
+
this
.getSeconds());
str = str.replace(/s|S/g,
this
.getSeconds());
return
str
}
|
8、原生JavaScript判断是否为数字类型
1
2
3
4
5
6
7
8
|
function
isDigit(value) {
var
patrn = /^[0-9]*$/;
if
(patrn.exec(value) ==
null
|| value ==
""
) {
return
false
}
else
{
return
true
}
}
|
9、原生JavaScript设置cookie值
1
2
3
4
5
6
7
8
9
|
function
setCookie(name, value, Hours) {
var
d =
new
Date();
var
offset = 8;
var
utc = d.getTime() + (d.getTimezoneOffset() * 60000);
var
nd = utc + (3600000 * offset);
var
exp =
new
Date(nd);
exp.setTime(exp.getTime() + Hours * 60 * 60 * 1000);
document.cookie = name +
"="
+ escape(value) +
";path=/;expires="
+ exp.toGMTString() +
";domain=360doc.com;"
}
|
10、原生JavaScript获取cookie值
1
2
3
4
5
|
function
getCookie(name) {
var
arr = document.cookie.match(
new
RegExp(
"(^| )"
+ name +
"=([^;]*)(;|$)"
));
if
(arr !=
null
)
return
unescape(arr[2]);
return
null
}
|