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