欢迎拍砖
1、字符串转换为数值
常规方法:
可以用
2、多维数组
常规方法:
可以利用对象的属性轻松实现
3、遍历正则结果
常规方法:
可以利用String.replace方法
大家自己又什么发现欢迎交流。
--- 楼下补充和讨论汇总 ---
22楼cuixiping
如果确需copy到一个普通数组,也可以更简单有效的实现:
我也举一个奇淫巧技:
整数前补0
网上搜的笨方法:
奇淫巧计法1:
奇淫巧计法2:(推荐)
129楼 lepharye
通过>>>取整
转自:
http://bbs.youkuaiyun.com/topics/330250800
1、字符串转换为数值
常规方法:
1
2
|
var
a = parseFloat(
"12"
);
var
b = parseInt(
"34"
);
|
可以用
1
2
|
var
a = +(
"12"
);
var
b = +(
"34"
);
|
2、多维数组
常规方法:
1
2
3
4
5
6
7
|
var
A =
new
Array(2);
A[0] =
new
Array(2);
A[1] =
new
Array(2);
A[0][0] = 1;
A[0][1] = 2;
A[1][0] = 2;
A[1][2] = 2;
|
可以利用对象的属性轻松实现
1
2
3
4
5
|
var
A = {};
A[[0, 0]] = 1;
A[[0, 1]] = 2;
A[[1, 0]] = 3;
A[[1, 2]] = 4;
|
3、遍历正则结果
常规方法:
1
2
3
4
5
6
7
|
var
str =
"a1b2c3d4e5f6g7h8i9j0k"
;
var
match = str.match(/\d/g, str);
var
msg = [];
for
(
var
i = 0; i < match.length; i++) {
msg.push(match[i]);
}
alert(msg);
|
可以利用String.replace方法
1
2
3
4
5
6
|
var
str =
"a1b2c3d4e5f6g7h8i9j0k"
;
var
msg = [];
str.replace(/\d/g,
function
() {
msg.push(arguments[0]);
});
alert(msg);
|
大家自己又什么发现欢迎交流。
--- 楼下补充和讨论汇总 ---
22楼cuixiping
如果确需copy到一个普通数组,也可以更简单有效的实现:
1
2
3
|
var
str =
"a1b2c3d4e5f6g7h8i9j0k"
;
var
msg = str.replace(/\D/g,
''
).split(
''
);
alert(msg);
|
我也举一个奇淫巧技:
整数前补0
网上搜的笨方法:
1
2
3
4
5
6
7
8
9
|
function
pad(num, n) {
var
len = num.toString().length;
while
(len <n){
num =
"0"
+ num;
len++;
}
return
num;
}
alert(pad(3,6));
//000003
|
奇淫巧计法1:
1
2
3
4
|
function
pad(num, n) {
return
(Math.pow(10,n)+num+
''
).substr(1);
//缺点:位数长度有限,15位以内。
}
alert(pad(3,6));
//000003
|
奇淫巧计法2:(推荐)
1
2
3
4
5
|
function
pad(num, n) {
y=
'00000000000000000000000000000'
+num;
//爱几个0就几个,自己够用就行
return
y.substr(y.length-n);
}
alert(pad(3,6));
//000003
|
129楼 lepharye
通过>>>取整
1
2
|
var
test = 3.45;
alert(test>>>0);
|