bat(basic attention token)是javascript創(chuàng)始人,mozilla和firefox瀏覽器聯(lián)合創(chuàng)始人brendan eich創(chuàng)辦的一個用于在廣告商和用戶之間進(jìn)行流通的數(shù)字資產(chǎn),用于解決瀏覽器中的廣告展示和用戶激勵問題。
創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都做網(wǎng)站、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的博羅網(wǎng)站設(shè)計(jì)、移動媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
項(xiàng)目基于brave瀏覽器開展去中心化數(shù)字廣告業(yè)務(wù),通過零知識證明的運(yùn)用保護(hù)用戶隱私,同時可以使用戶的關(guān)注得到回報。brave瀏覽器中有一個獨(dú)特的概念——注意力。brave使用anonize算法,能統(tǒng)計(jì)用戶行為,比如點(diǎn)擊什么鏈接最多,或在哪個網(wǎng)站停留時間最久。這些行為都可以使用“注意力”這個單位量化,具體方式就是在瀏覽器中嵌入?yún)^(qū)塊鏈賬本系統(tǒng),而這個系統(tǒng)流通的代幣就是bat(注意力幣)。簡單說,整合了bat代幣的brave瀏覽器,會讓商家、網(wǎng)站主和用戶間保持良好的正反饋關(guān)系。平時brave用戶觀看廣告或優(yōu)質(zhì)內(nèi)容時,因?yàn)榛ㄙM(fèi)了注意力,會獲得bat代幣的獎勵;而網(wǎng)站主憑借廣告和優(yōu)質(zhì)內(nèi)容成功吸引了用戶的注意力,系統(tǒng)也會對其進(jìn)行獎勵。用戶和網(wǎng)站主獲得的bat代幣都來自商家的廣告費(fèi)用投入。
script
function outputMoney(number)
{
number=number.replace(/\,/g,"");
if (number=="") return "";
if(number0)
return '-'+outputDollars(Math.floor(Math.abs(number)-0) + '') + outputCents(Math.abs(number) - 0);
else
return outputDollars(Math.floor(number-0) + '') + outputCents(number - 0);
}
function outputDollars(number)
{
if (number.length= 3)
return (number == '' ? '0' : number);
else
{
var mod = number.length%3;
var output = (mod == 0 ? '' : (number.substring(0,mod)));
for (i=0 ; i Math.floor(number.length/3) ; i++)
{
if ((mod ==0) (i ==0))
output+= number.substring(mod+3*i,mod+3*i+3);
else
output+= ',' + number.substring(mod+3*i,mod+3*i+3);
}
return (output);
}
}
function outputCents(amount)
{
amount = Math.round( ( (amount) - Math.floor(amount) ) *100);
return (amount10 ? '.0' + amount : '.' + amount);
}
/script
補(bǔ)充:JavaScript一種直譯式腳本語言,是一種動態(tài)類型、弱類型、基于原型的語言,內(nèi)置支持類型。它的解釋器被稱為JavaScript引擎,為瀏覽器的一部分,廣泛用于客戶端的腳本語言,最早是在HTML(標(biāo)準(zhǔn)通用標(biāo)記語言下的一個應(yīng)用)網(wǎng)頁上使用,用來給HTML網(wǎng)頁增加動態(tài)功能。
function?changeNumMoneyToChinese(money){
var?cnNums?=?new?Array("零",?"壹",?"貳",?"叁",?"肆",?"伍",?"陸",?"柒",?"捌",?"玖");?
var?cnIntRadice?=?new?Array("",?"拾",?"佰",?"仟");?
var?cnIntUnits?=?new?Array("",?"萬",?"億",?"兆");
var?cnDecUnits?=?new?Array("角",?"分",?"毫",?"厘");
var?cnInteger?=?"整";?
var?cnIntLast?=?"元";
var?maxNum?=?999999999999999.9999;
var?IntegerNum;?
var?DecimalNum;?
var?ChineseStr?=?"";?
var?parts;?
if?(money?==?""){
return?"";
}
money?=?parseFloat(money);
if?(money?=?maxNum)?{
alert('超出最大處理數(shù)字');
return?"";
}
if?(money?==?0)?{
ChineseStr?=?cnNums[0]?+?cnIntLast?+?cnInteger;
return?ChineseStr;
}
money?=?money.toString();?
if?(money.indexOf(".")?==?-1)?{
IntegerNum?=?money;
DecimalNum?=?'';
}?else?{
parts?=?money.split(".");
IntegerNum?=?parts[0];
DecimalNum?=?parts[1].substr(0,?4);
}
if?(parseInt(IntegerNum,?10)??0)?{?
var?zeroCount?=?0;
var?IntLen?=?IntegerNum.length;
for?(var?index?=?0;?index??IntLen;?index++)?{
var?n?=?IntegerNum.substr(index,?1);
var?p?=?IntLen?-?index?-?1;
var?q?=?p?/?4;
var?m?=?p?%?4;
if?(n?==?"0")?{
zeroCount++;
}?else?{
if?(zeroCount??0)?{
ChineseStr?+=?cnNums[0];
}
//歸零
zeroCount?=?0;?
ChineseStr?+=?cnNums[parseInt(n)]?+?cnIntRadice[m];
}
if?(m?==?0??zeroCount??4)?{
ChineseStr?+=?cnIntUnits[q];
}
}
ChineseStr?+=?cnIntLast;
}
if?(DecimalNum?!=?'')?{?
var?decLen?=?DecimalNum.length;
for?(var?index?=?0;?index??decLen;?index++)?{
var?n?=?DecimalNum.substr(index,?1);
if?(n?!=?'0')?{
ChineseStr?+=?cnNums[Number(n)]?+?cnDecUnits[index];
}
}
}
if?(ChineseStr?==?'')?{
ChineseStr?+=?cnNums[0]?+?cnIntLast?+?cnInteger;
}?else?if?(DecimalNum?==?'')?{
ChineseStr?+=?cnInteger;
}
return?ChineseStr;
}
console.log(changeNumMoneyToChinese(125.6));
這是一個很常用的 js 技術(shù),因?yàn)橛X得比較典型,可能很多新手都會遇到此問題,所以整理了一下,以備新手查閱。
1、round 方法
作用:返回與給出的數(shù)值表達(dá)式最接近的整數(shù)。
語法:Math.round(number) ,必選項(xiàng) number 參數(shù)是要舍入到最接近整數(shù)的值。
說明:如果 number 的小數(shù)部分大于等于 0.5,返回值是大于 number 的最小整數(shù)。否則,round 返回小于等于 number 的最大整數(shù)。
2、在 Javascript 1.5 (IE5.5+,NS6+ 以上版本支持)中,新增了2個專門用于貨幣流通的函數(shù),Number.toFixed(x) 和 Number.toPrecision(x)。
Number.toFixed(x) 是將指定數(shù)字截取小數(shù)點(diǎn)后 x 位, Number.toPrecision(x) 是將整個數(shù)字截取指定(x)長度。注意,一個是計(jì)算小數(shù)點(diǎn)后的長度,一個是計(jì)算整個數(shù)字的長度 。
例如:
script type="text/javascript"
var aa = 2.3362;
document.write(aa.toFixed(1)); // 2.3
document.write(aa.toFixed(2)); // 2.34
document.write(aa.toPrecision(2)); // 2.3
document.write(aa.toPrecision(3)); // 2.34
document.write(Math.round(aa * 10) / 10); // 2.3
document.write(Math.round(aa * 100) / 100); // 2.34
/script
由于是新增函數(shù),所以要考慮瀏覽器支持問題。