本文目錄一覽:
js 代碼哪裡出錯了?
js自上而下運行
你js在上面引用的話,js會先加載,加載的時候html還沒渲染完畢,所以你獲取到的元素是null,null獲取value自然就報錯了。你把js放在所有節點後面/body前面就可以了。注意一定要放在/body前面,因為IE內核的瀏覽器,執行/body外面的js腳本是會報錯的。
請JS高手幫我看看我這個代碼有沒有錯,謝謝
你給出的代碼中:
Timestable函數未定義
xieshibiao定義後位使用
JS代碼問題,總是提示網頁中有錯誤, ‘className’ 為空或不是對象
檢查了下你的js 是沒問題的
你自己alert彈框試試你傳上來的值是不是正確的
js代碼哪裡有錯
代碼錯誤有三個地方:
1 var ch3 應改為 var ch3 = “”,就是定義 ch3 時,定義為一個空字符串
2 if 條件語句最後 else 裡邊 ch2_1 += ’00’ 應改為 ch2_1 = ch2 + ’00’
3 for 循環裡邊 ch3 = … 應改為 ch3 += … ‘…’表示的是後面那一串
修改後的代碼是
var ch = [“千”, “百”, “拾”, “億”, “千”, “百”, “拾”, “萬”, “千”, “百”, “拾”, “元”, “角”, “分”];
var ch1 = ‘零壹貳叄肆伍陸柒捌玖’;
var ch2_1;
var ch3 = ”;
var ch2 = document.getElementById(“a”).value;
var a = /(\.[0-9])$/;
var a1 = /(\.[0-9][0-9])$/;
if (a1.test(ch2)) {
ch2_1 = ch2.replace(/\./, ”);
} else if (a.test(ch2)) {
ch2_1 = ch2.replace(/\./, ”);
ch2_1 += ‘0’;
} else {
ch2_1 = ch2 + ’00’;
}
var ch2_2 = ch2_1.length;
var ch_1 = ch.slice(-ch2_2);
for (var ad = 0; ad ch2_1.length; ad++) {
ch3 += ch1.charAt(parseInt(ch2_1.substr(ad, 1))) + ch_1[ad];
}
var ch4 = ch3.replace(/零(千|百|拾|角)/g, ‘零’);
ch4 = ch3.replace(/零角零分/, ‘整’);
alert(‘中文貨幣’, ‘+ch4’);
————————
代碼命名可以規範一下,20幾行代碼,出現了10個變量,正則
var a = /(\.[0-9])$/; — var a = /\.\d$/;
var a1 = /(\.[0-9][0-9])$/; —- var a1 = /\.\d{2}$/;
能簡單就簡單唄。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/236883.html