开心网超级大亨总资产分析

开心网的超级大亨有两个地方可以获得总资产信息

可以通过总资产获得,这时信息是由图片直接拼接而成的。

也可以通过现金+资产获得。这里选择这种方法

 

为什么这么做呢?因为懒,呵呵

 

代码
<span style="width:320px;"><b class="f16">总资产:</b><img src="http://img.kaixin001.com.cn/i3/dh/5.gif" /><img src="http://img.kaixin001.com.cn/i3/dh/0.gif" /><img src="http://img.kaixin001.com.cn/i3/dh/9.gif" /><img src="http://img.kaixin001.com.cn/i3/dh/0.gif" /><img src="http://img.kaixin001.com.cn/i3/dh/2.gif" /><img src="http://img.kaixin001.com.cn/i3/dh/9.gif" /> 亿<img src="http://img.kaixin001.com.cn/i3/dh/4.gif" /><img src="http://img.kaixin001.com.cn/i3/dh/1.gif" /><img src="http://img.kaixin001.com.cn/i3/dh/1.gif" /><img src="http://img.kaixin001.com.cn/i3/dh/3.gif" /> 万元&nbsp;<img src="http://img.kaixin001.com.cn/i3/dh/icon_u.gif" /></span>

 

 

这段html虽然通过简单的replace方法就可以过滤为509029亿4113万的信息,但是写的代码太多了.....

 

来看看咱是怎么做的吧:

 

代码
var toCurrency = (function() {
var config = {"亿":100000000,"":10000,"":1000,"":100,"":10};
return function (str) {
var result = "";
str
= $.trim(str.substring(3,str.length -1));
str
= str.replace(/\D+/g,function(str){
var t = 1;
for ( var i = 0; i < str.length; i++ ) {
t
*= config[str.charAt(i)];
}
return "*" + t + "+";
});
eval(
"result = " + str + "0;");
return result;
}
})();

var total = 0;
$(
"#zcsum li b").each(function(){
total
+= toCurrency($(this).text());
});

alert(total);

 

 

戏法人人会变,各有巧妙不同。

咱这个戏法很简单,就是把144397亿113万的形式转变为144397 * 100000000 + 113 * 10000的形式,再利

用强大的eval函数,就可以得到具体金额了。

 

非常简单吧?

 

很臭屁的召唤更简单的实现,顺便推荐下这个GreaseMonkey控件http://greasefire.userscripts.org/scripts/review/68518

posted on 2010-08-18 19:40  咚锵  阅读(310)  评论(0)    收藏  举报

导航