[转帖]Javascript几个原创小技巧_Android, Python及开发编程讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Android, Python及开发编程讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 3105 | 回复: 0   主题: [转帖]Javascript几个原创小技巧        下一篇 
张三丰
注册用户
等级:上尉
经验:511
发帖:53
精华:0
注册:2013-11-19
状态:离线
发送短消息息给张三丰 加好友    发送短消息息给张三丰 发消息
发表于: IP:您无权察看 2013-11-20 9:40:35 | [全部帖] [楼主帖] 楼主

1、字符串转换为数值
常规方法:

JavaScript code
vara = parseFloat("12");
varb = parseInt("34");


可以用

JavaScript code
vara = +("12");
varb = +("34");


2、多维数组
常规方法:

JavaScript code
varA = newArray(2);
A[0] = newArray(2);
A[1] = newArray(2);
A[0][0] = 1;
A[0][1] = 2;
A[1][0] = 2;
A[1][2] = 2;


可以利用对象的属性轻松实现

JavaScript code
varA = {};
A[[0, 0]] = 1;
A[[0, 1]] = 2;
A[[1, 0]] = 3;
A[[1, 2]] = 4;


3、遍历正则结果
常规方法:

JavaScript code
varstr = "a1b2c3d4e5f6g7h8i9j0k";
varmatch = str.match(/\d/g, str);
varmsg = [];
for(vari = 0; i < match.length; i++) {
      msg.push(match[i]);
}
alert(msg);


可以利用String.replace方法

JavaScript code
varstr = "a1b2c3d4e5f6g7h8i9j0k";
varmsg = [];
str.replace(/\d/g, function() {
      msg.push(arguments[0]);
});
alert(msg);


如果确需copy到一个普通数组,也可以更简单有效的实现:

JavaScript code
varstr = "a1b2c3d4e5f6g7h8i9j0k";
varmsg = str.replace(/\D/g,'').split('');
alert(msg);


整数前补0

网上搜的笨方法:

JavaScript code
functionpad(num, n) {
      varlen = num.toString().length;
      while(len <n){
            num = "0"+ num;
            len++;
      }
      returnnum;
}
alert(pad(3,6)); //000003
JavaScript code
functionpad(num, n) {
      return(Math.pow(10,n)+num+'').substr(1); //缺点:位数长度有限,15位以内。
}
alert(pad(3,6)); //000003
JavaScript code
functionpad(num, n) {
      y='00000000000000000000000000000'+num; //爱几个0就几个,自己够用就行
      returny.substr(y.length-n);
}
alert(pad(3,6)); //000003


通过>>>取整

JavaScript code
vartest = 3.45;
alert(test>>>0);




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论