Kasus uji dibagi menjadi fungsi dan kelas untuk membaca karakter string besar satu per satu.
Kode uji
Node.js
fungsi
var fs = membutuhkan ("fs"); var content = fs.readfileSync ("page.html", {encoding: "utf-8"}); function chars (content) {var length = content.length; var pos = 0; while (pos ++ <panjang) {var chr = konten [pos - 1]; }} var start = date.now (); chars (konten); var end = date.now (); console.log (end - start);baik
var fs = membutuhkan ("fs"); var content = fs.readfileSync ("page.html", {encoding: "utf-8"}); var chars = fungsi (str) {this.str = str; this.length = str.length this.pos = 0;} chars.prototype.run = function () {while (this.pos ++ <this.length) {var chr = this.str [this.pos - 1]; }} var start = date.now (); var instance = chars baru (konten); instance.run (); var end = date.now (); console.log (end - start);Php
fungsi
<? phpfunction chars ($ content) {$ length = strlen ($ content); $ pos = 0; while ($ pos ++ <$ length) {$ char = $ content {$ pos - 1}; }} $ content = file_get_contents ("page.html"); $ start = microtime (true); chars ($ content); $ end = microtime (true); echo ($ end - $ start). "/n";?>baik
<? phpclass chars {fungsi publik __construct ($ str) {$ this-> str = $ str; $ this-> length = strlen ($ str); $ this-> pos = 0; } fungsi publik run () {while ($ this-> pos ++ <$ this-> length) {$ char = $ this-> str {$ this-> pos-1}; }}} $ content = file_get_contents ("page.html"); $ start = microtime (true); $ instance = chars baru ($ content); $ instance-> run (); $ end = microtime (true); echo ($ end - $ start). "/n";?>Python
fungsi
import codecsimport timedef chars(content): length = len(content) pos = 0 while(pos < length): char = content[pos] pos = pos + 1f = codecs.open('page.html', encoding='utf-8')content = f.read()start = time.time()chars(content)end = time.time();print end - startbaik
Impor CodecSimport TimeClass Chars (): def __init __ (self, str): self.str = strand self.length = len (str) self.pos = 0 def run (self): while (self.pos <self.length): char = self.str [mandiri] self.pos = self.pos + 1f = codec.pos.pos] self.pos = self.poss + 1f = codec. encoding = 'UTF -8') konten = f.read () start = time.time () instance = chars (konten) instance.run () end = time.time (); print (end - start)
Konten file page.html adalah teks panjangnya.
Hasil tes
Fungsi Bahasa Node Node.js 0.022S 0.026SPHP 0.35S 1.02Spython 0.58S 1.50s