1、原生JavaScript实现字符串长度截取
01 |
function cutstr(str, len) {
|
02 |
var temp;
|
03 |
var icount = 0;
|
04 |
var patrn = /[^\x00-\xff]/;
|
05 |
var strre = "";
|
06 |
for (var i = 0; i < str.length; i++) {
|
07 |
if (icount < len - 1) {
|
08 |
temp = str.substr(i, 1);
|
09 |
if (patrn.exec(temp) == null) {
|
10 |
icount = icount + 1
|
11 |
} else {
|
12 |
icount = icount + 2
|
13 |
}
|
14 |
strre += temp
|
15 |
} else {
|
16 |
break
|
17 |
}
|
18 |
}
|
19 |
return strre + "..."
|
20 |
} |
2、原生JavaScript获取域名主机
01 |
function getHost(url) {
|
02 |
var host = "null";
|
03 |
if(typeof url == "undefined"|| null == url) {
|
04 |
url = window.location.href;
|
05 |
}
|
06 |
var regex = /^\w+\:\/\/([^\/]*).*/;
|
07 |
var match = url.match(regex);
|
08 |
if(typeof match != "undefined" && null != match) {
|
09 |
host = match[1];
|
10 |
}
|
11 |
return host;
|
12 |
} |
3、原生JavaScript清除空格
1 |
String.prototype.trim = function() {
|
2 |
var reExtraSpace = /^\s*(.*?)\s+$/;
|
3 |
return this.replace(reExtraSpace, "$1")
|
4 |
} |
4、原生JavaScript替换全部
1 |
String.prototype.replaceAll = function(s1, s2) {
|
2 |
return this.replace(new RegExp(s1, "gm"), s2)
|
3 |
} |
5、原生JavaScript转义html标签
1 |
function HtmlEncode(text) {
|
2 |
return text.replace(/&/g, '&').replace(/\"/g, '"').replace(/</g, '<').replace(/>/g, '>')
|
3 |
} |
6、原生JavaScript还原html标签
1 |
function HtmlDecode(text) {
|
2 |
return text.replace(/&/g, '&').replace(/"/g, '\"').replace(/</g, '<').replace(/>/g, '>')
|
3 |
} |
7、原生JavaScript时间日期格式转换
01 |
Date.prototype.Format = function(formatStr) {
|
02 |
var str = formatStr;
|
03 |
var Week = ['日', '一', '二', '三', '四', '五', '六'];
|
04 |
str = str.replace(/yyyy|YYYY/, this.getFullYear());
|
05 |
str = str.replace(/yy|YY/, (this.getYear() % 100) > 9 ? (this.getYear() % 100).toString() : '0' + (this.getYear() % 100));
|
06 |
str = str.replace(/MM/, (this.getMonth() + 1) > 9 ? (this.getMonth() + 1).toString() : '0' + (this.getMonth() + 1));
|
07 |
str = str.replace(/M/g, (this.getMonth() + 1));
|
08 |
str = str.replace(/w|W/g, Week[this.getDay()]);
|
09 |
str = str.replace(/dd|DD/, this.getDate() > 9 ? this.getDate().toString() : '0' + this.getDate());
|
10 |
str = str.replace(/d|D/g, this.getDate());
|
11 |
str = str.replace(/hh|HH/, this.getHours() > 9 ? this.getHours().toString() : '0' + this.getHours());
|
12 |
str = str.replace(/h|H/g, this.getHours());
|
13 |
str = str.replace(/mm/, this.getMinutes() > 9 ? this.getMinutes().toString() : '0' + this.getMinutes());
|
14 |
str = str.replace(/m/g, this.getMinutes());
|
15 |
str = str.replace(/ss|SS/, this.getSeconds() > 9 ? this.getSeconds().toString() : '0' + this.getSeconds());
|
16 |
str = str.replace(/s|S/g, this.getSeconds());
|
17 |
return str
|
18 |
} |
8、原生JavaScript判断是否为数字类型
1 |
function isDigit(value) {
|
2 |
var patrn = /^[0-9]*$/;
|
3 |
if (patrn.exec(value) == null || value == "") {
|
4 |
return false
|
5 |
} else {
|
6 |
return true
|
7 |
}
|
8 |
} |
9、原生JavaScript设置cookie值
1 |
function setCookie(name, value, Hours) {
|
2 |
var d = new Date();
|
3 |
var offset = 8;
|
4 |
var utc = d.getTime() + (d.getTimezoneOffset() * 60000);
|
5 |
var nd = utc + (3600000 * offset);
|
6 |
var exp = new Date(nd);
|
7 |
exp.setTime(exp.getTime() + Hours * 60 * 60 * 1000);
|
8 |
document.cookie = name + "=" + escape(value) + ";path=/;expires=" + exp.toGMTString() + ";domain=360doc.com;"
|
9 |
} |
10、原生JavaScript获取cookie值
1 |
function getCookie(name) {
|
2 |
var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));
|
3 |
if (arr != null) return unescape(arr[2]);
|
4 |
return null
|
5 |
} |