3345687687876789123
Dikonversi ke: xxx, xxx, xxx
Salin kode kode sebagai berikut:
<type skrip = "Teks/JavaScript">
window.onload = function () {
// Seluruh tes disediakan oleh pisau
var testFun = function (callback, str) {
var tipelem = docment.createElement ('div'),
Starttime,
Durasi = 0;
untuk (var j = 5; j> 0; j--) {
startTime = +Tanggal baru ();
untuk (var i = 10000; i> 0; i--) {
callback ();
}
durasi = (( + tanggal baru ())) - startTime) + durasi;
}
durasi = (durasi / 5) .tofixed (0);
Tipelem.inerHtml = str + 'Total waktu:' + durasi + 'ms';
Document.Body.AppendChild (Tipelem);
};
var str = '3345687687876789123';
var cutr1 = function (str) {// dengan pisau
var len = str.length,
LastIndex,
arr = [];
While (len> 0) {
lastIndex = len;
len- = 3;
Arr.unshift (str.substring (len, lastIndex));
}
Return arr.join (',');
};
var cutr2 = function (str) {// abcd
Return str.replace (// b (? = (?:/d {3})+$)/g, ',', ');
};
var cutr3 = function (str) {// paman
Return str.replace (/(.*) (/d {3}) $/, function () {
if (argumen [1] && argumen [2]) {
Mengembalikan argumen [1] .replace (/(.*) (/d {3}) $/, arguments.callee)+","+argumen [2];
} Kalau tidak {
Mengembalikan argumen [0];
}
});
};
var cutr4 = function (str) {// alucelx
Return STR.SPLIT (''). ');
};
var cutr5 = function (str) {// situ zhengmei
var return = [];
While (str) {
str = str.replace (// d {1,3} $/g, function (a) {
Ret.unshift (a)
Kembali "" ""
});
}
Return ret.join (",");
};
var cutr6 = function (str) {// situ zhengmei
var n = str.length % 3;
if (n) {{
Kembalikan str.slice (0, n) + str.slice (n) .ruplace (/(/d {3})/g, ', $ 1')
} Kalau tidak {
Return str.replace (/(/d {3})/g, ', $ 1').
}
};
var cutr7 = function (str) {// situ zhengmei
var return = ""
untuk (var i = 0, n = str.length, m = n %3-1; i <n; i ++) {
Ret += str.charat (i)
if (i % 3 === m) {
Ret += ","
}
}
var e = ret.length -1
Return Ret.charat (E) == ","?
}
var cutr8 = function (str) {// [[valueof]]]
var s2 = [] .slice.call (str);
Untuk (var i = s2.length-3; i> 0; i- = 3) {
s2.splice (i, 0, ',');
}
Return s2.join ("")
}
var cutr9 = function (str) {// saya dengar
var newstr = array baru (str.length+ parseInt (str.length/3));
Newstr [newstr.length-] = str [str.length-];
var currentIndex = str.length-;
untuk (var i = newstr.length-; i> = 0; i--) {
if (newstr.length-i)%4 == 0)
{{
Newstr [i] = "," ;;;
} Kalau tidak {
Newstr [i] = str [CurrentIndex ---];
}
}
Return newstr.join ("")
}
var cutr10 = function (str) {// rekey
var len = str.length, str2 = '', max = math.floor (len / 3);
untuk (var i = 0; i <max; i ++) {
var s = str.slice (len -3, len);
str = str.substr (0, len -3);
str2 = (',' + s) + str2;
len = str.length;
}
str += str2;
Mengembalikan str
}
// Berikut ini adalah tes kinerja
testfun (function () {
cutr1 (str);
}, 'Metode 1');
testfun (function () {
cutr2 (str);
}, 'Metode dua');
testfun (function () {
cutr3 (str);
}, 'Metode tiga');
testfun (function () {
cutr4 (str);
}, 'Metode 4');
testfun (function () {
cutr5 (str);
}, 'Metode 5');
testfun (function () {
cutr6 (str);
}, 'Metode 6');
testfun (function () {
cutr7 (str);
}, 'Metode tujuh');
testfun (function () {
cutr8 (str);
}, 'Metode delapan');
testfun (function () {
cutr9 (str);
}, 'Metode sembilan');
testfun (function () {
cutr10 (str);
}, 'Metode Ten');
}
</script>
Hasil tes energi baru adalah:
Salin kode kode sebagai berikut:
Metode Total Waktu: 14 ms
Metode Dua Total Waktu: 9 Ms
Metode Total Waktu: 174 ms
Metode 4 Total Waktu: 34 ms
Metode 5 Total Waktu: 39 ms
Metode enam waktu total waktu: 7 ms
Metode Tujuh Total Waktu Waktu: 9 Ms
Metode Delapan Total Waktu: 30 ms
Metode Sembilan Total Waktu Waktu: 14 ms
Metode sepuluh waktu total waktu: 4 ms