此文为计算新浪Weibo的消息长度的方法 就是 (发言请遵守社区公约还可以输入字) 复制代码 代码如下: var getMessageLength = (function() { var byteLength = function(b) { if(typeof b == "undefined") { return ; } var a = bmatch(/[^xx]/g); return(blength + (!a ? : alength)); }; return function(message) { message = message || ; message = messagereplace(/rn/g "n"); var c = d = e = f = message g = messagematch(/http://[azAZ]+([azAZ]+)+([AZaz_$+!*()/:;@&=?~#%]*)*/gi) || [] h = ;
for(var i = j = glength; i < j; i++) { var k = byteLength(g[i]); if(/^(g[i])) { continue; } /^(http://)+(tsinacomcn|tsinacn)/test(g[i]) || /^(http://)+(weibocom|weibocn)/test(g[i]) ? h += k <= c ? k : k <= d ? e : k d + e : h += k <= d ? e : k d + e; f = freplace(g[i] ""); } var l = Mathceil((h + byteLength(f)) / ); return l; }; })(); getMessageLength(昨天电脑的硬盘坏了我发邮件给美国国家安全局他们竟然不肯把备份的内容发给我!); // |