1、 获取字符串数值部分
因为项目上我只负责功能的实现,所以很多页面并不是我自己搭的,但是 又会有些生手来搭出一些很不好获取标签内的数值的情况。
比如:
1
2
3
|
<
div
>原价998现在只要
<
a
>99.8!</
a
>
</
div
>
|
像这种页面,有时候要获取里面的998或者98。就会变的有点麻烦。
通过我下面提供的方法,可以很方便的解决这种情况
1
2
3
4
|
function
getNum(text) {
var
value = text.replace(/[^(0-9).]/ig,
""
);
return
parseFloat(value);
}
|
这段方法很简短,实质上就是通过正则去匹配。将非数字或者小数点的字符替换成空的字符串(实际上就是删除)
2、获取设备信息
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
|
//#region 获取设备信息
var
browser = {
versions:
function
() {
var
u = navigator.userAgent, app = navigator.appVersion;
return
{
trident: u.indexOf(
'Trident'
) > -1,
//IE内核
presto: u.indexOf(
'Presto'
) > -1,
//opera内核
webKit: u.indexOf(
'AppleWebKit'
) > -1,
//苹果、谷歌内核
gecko: u.indexOf(
'Gecko'
) > -1 && u.indexOf(
'KHTML'
) == -1,
//火狐内核
mobile: !!u.match(/AppleWebKit.*Mobile.*/),
//是否为移动终端
ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),
//ios终端
android: u.indexOf(
'Android'
) > -1 || u.indexOf(
'Linux'
) > -1,
//android终端或者uc浏览器
iPhone: u.indexOf(
'iPhone'
) > -1,
//是否为iPhone或者QQHD浏览器
iPad: u.indexOf(
'iPad'
) > -1,
//是否iPad
webApp: u.indexOf(
'Safari'
) == -1,
//是否web应该程序,没有头部与底部
weixin: u.indexOf(
'MicroMessenger'
) > -1,
//是否微信 (2015-01-22新增)
qq: u.match(/\sQQ/i) ==
" qq"
//是否QQ
};
}(),
language: (navigator.browserLanguage || navigator.language).toLowerCase()
}
//实际使用的时候如下:
if
(browser.versions.webKit) {
//为苹果 谷歌内核执行的代码...
}
//#endregion
|
3.将字符串超出指定长度部分隐藏
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
/*
将字符串以指定长度显示,多余部分以省略号显示(len--显示长度
defaultStr--若字符串为空显示的字符串)
*/
String.prototype.splitString =
function
(len, defaultStr) {
var
result =
""
;
var
str =
this
.toString()
if
(str) {
str = str.trim()
if
(str.length > len) {
result = str.substring(0, len) +
"..."
;
}
else
{
result = str;
}
}
else
{
result = defaultStr;
}
return
result;
}
|
4.将字符串长度减一
1
2
3
4
|
//长度减一
String.prototype.delLast =
function
() {
return
this
.substring(0,
this
.length - 1)
}
|
5.将数字型字符串补全指定长度
1
2
3
4
5
6
7
8
9
10
|
//给数字型字符串固定指定长度
String.prototype.addZero =
function
(n) {
var
num =
this
var
len = num.toString().length;
while
(len < n) {
num =
'0'
+ num;
len++;
}
return
num;
}
|
6.用户昵称省略
1
2
3
4
5
|
//用户昵称省略
String.prototype.telHide =
function
() {
var
name =
this
return
name.substr(0, 1) +
"****"
+ name.substring(name.length - 1, name.length)
}
|