21

数値をフォーマットして、3 つの数値ごとにコンマを入れようとしています。ただし、非常にグリッチが多く、数字が 8 になると機能しません。以下のjsfiddleにすべてのコードを入れました:

function commaSeparateNumber(val){
    val = val.replace(',', '');
    var array = val.split('');
    var index = -3;
    while (array.length + index > 0) {
        array.splice(index, 0, ',');
        // Decrement by 4 since we just added another unit to the array.
        index -= 4;
    }
    return array.join('');
};    

$(document).on('keyup', '.test', function() {
    var value = $(this).val();
    value = commaSeparateNumber(value);
    $(this).val(value);
});

http://jsfiddle.net/R8JrF/

どんな助けでも大歓迎です!

4

5 に答える 5

15

チェックはこちらをご利用くださいNumber.prototype.toLocaleString();

var no = 3456;
no.toLocaleString(); 

3,456を与える

于 2016-12-08T08:23:49.750 に答える