| 1 | <?xml version="1.0" encoding="utf-8"?>
|
|---|
| 2 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|---|
| 3 | <html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja">
|
|---|
| 4 | <head>
|
|---|
| 5 | <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|---|
| 6 | <meta http-equiv="Content-Style-Type" content="text/css" />
|
|---|
| 7 | <meta http-equiv="Content-Script-Type" content="text/javascript" />
|
|---|
| 8 |
|
|---|
| 9 | <script type="text/javascript" src="nobjdb.js"></script>
|
|---|
| 10 | <script type="text/javascript">
|
|---|
| 11 |
|
|---|
| 12 | function ATitle(title) {
|
|---|
| 13 | this.title = title;
|
|---|
| 14 | }
|
|---|
| 15 |
|
|---|
| 16 | ATitle.prototype.toString = function(){return this.title;}
|
|---|
| 17 |
|
|---|
| 18 | function test(){
|
|---|
| 19 | window.NDB = new NamedObjectDB("non-case-sensitive");
|
|---|
| 20 |
|
|---|
| 21 | var src = [
|
|---|
| 22 | "CLANNAD", "The World of GOLDEN EGGS",
|
|---|
| 23 | "グレンラガン", "ひぐらしのなく頃に解",
|
|---|
| 24 | "プリズム・アーク", "レンタルマギカ",
|
|---|
| 25 | "もっけ", "もやしもん",
|
|---|
| 26 | "こどものじかん", "さよなら絶望先生",
|
|---|
| 27 |
|
|---|
| 28 | "みなみけ", "キミキス",
|
|---|
| 29 | "ガンダム00", "地獄少女",
|
|---|
| 30 | "ハヤテのごとく!", "デルトラクエスト",
|
|---|
| 31 | "ニニンがシノブ伝", "吉永さん家のガーゴイル",
|
|---|
| 32 | "ワンピース", "ゲゲゲの鬼太郎",
|
|---|
| 33 |
|
|---|
| 34 | "電脳コイル", "ちびまる子ちゃん",
|
|---|
| 35 | "銀魂", "D.C.II",
|
|---|
| 36 | "らき☆すた", "こちら葛飾区亀有公園前派出所",
|
|---|
| 37 | "ぽてまよ", "ぺとぺとさん",
|
|---|
| 38 | "あたしンち", "しゅごキャラ!",
|
|---|
| 39 |
|
|---|
| 40 | "大江戸ロケット", "魔法少女リリカルなのは",
|
|---|
| 41 | "ゼロの使い魔", "ラーゼフォン",
|
|---|
| 42 | "らいむいろ戦奇譚", "アイドルマスター XENOGLOSSIA",
|
|---|
| 43 | "創聖のアクエリオン","交響詩篇エウレカセブン",
|
|---|
| 44 | "ぼくらの", "コードギアス 反逆のルルーシュ",
|
|---|
| 45 |
|
|---|
| 46 | "スカイガールズ", "おねがいマイメロディ",
|
|---|
| 47 | "ふたりはプリキュア","おとぎ銃士赤ずきん",
|
|---|
| 48 | "ぱにぽにだっしゅ!","苺ましまろ",
|
|---|
| 49 | "BECK", "ハチミツとクローバー",
|
|---|
| 50 | "舞-HiME", "月詠 -MOON PHASE-",
|
|---|
| 51 |
|
|---|
| 52 | "エル・カザド", "BAMBOO BLADE",
|
|---|
| 53 | "スケッチブック", "Over Drive",
|
|---|
| 54 | "素敵探偵☆ラビリンス","がくえんゆーとぴあ まなびストレート!",
|
|---|
| 55 | "武装錬金 ", "すもももももも 地上最強のヨメ",
|
|---|
| 56 | "スクールランブル", "ローゼンメイデン トロイメント",
|
|---|
| 57 |
|
|---|
| 58 | "明日のナージャ", "一騎当千",
|
|---|
| 59 | "宇宙のステルヴィア", "エアマスター",
|
|---|
| 60 | "おねがい☆ツインズ", "カレイドスター",
|
|---|
| 61 | "GADGUARD", "GUNSLINGER GIRL",
|
|---|
| 62 | "ガンパレード・マーチ", "キノの旅",
|
|---|
| 63 |
|
|---|
| 64 | "君が望む永遠", "舞-乙HiME",
|
|---|
| 65 | "まじかるカナン", "まほらば",
|
|---|
| 66 | "ミルモでポン!", "蟲師",
|
|---|
| 67 | "MAJOR", "ラムネ",
|
|---|
| 68 | "極上生徒会", "かりん",
|
|---|
| 69 |
|
|---|
| 70 | "あずまんが大王", "十二国記",
|
|---|
| 71 | "アクエリアンエイジ", "テニスの王子様",
|
|---|
| 72 | "光と水のダフネ", "シャーマンキング",
|
|---|
| 73 | "ぶぶチャチャ", "ジャングルはいつもハレのちグゥ",
|
|---|
| 74 | "フルーツバスケット", "HELLSING",
|
|---|
| 75 |
|
|---|
| 76 | "ななか6/17", "成恵の世界",
|
|---|
| 77 | "なるたる", "ジパング",
|
|---|
| 78 | "機動戦士ガンダムSEED","げんしけん",
|
|---|
| 79 | "うた∽かた", "エルフェンリート",
|
|---|
| 80 | "ゾイド -ZOIDS-", "HUNTER×HUNTER"
|
|---|
| 81 | ];
|
|---|
| 82 |
|
|---|
| 83 |
|
|---|
| 84 | for(;src.length>0;)
|
|---|
| 85 | NDB.put( new ATitle(src.shift()) );
|
|---|
| 86 |
|
|---|
| 87 |
|
|---|
| 88 |
|
|---|
| 89 | }
|
|---|
| 90 |
|
|---|
| 91 | var SEARCH_WORD = "ガン";
|
|---|
| 92 |
|
|---|
| 93 | function launch() {
|
|---|
| 94 | var out = document.getElementById("out");
|
|---|
| 95 |
|
|---|
| 96 | out.appendChild( document.createTextNode("items: "+NDB.array.length+", search_keyword:"+SEARCH_WORD));
|
|---|
| 97 | out.appendChild( document.createElement("br") );
|
|---|
| 98 |
|
|---|
| 99 | out.appendChild( document.createTextNode("phase, time1, time2, res1, res2"));
|
|---|
| 100 | out.appendChild( document.createElement("br") );
|
|---|
| 101 |
|
|---|
| 102 | bench(0);
|
|---|
| 103 | }
|
|---|
| 104 |
|
|---|
| 105 | function bench(phase) {
|
|---|
| 106 | var i, t;
|
|---|
| 107 | var r1, r2;
|
|---|
| 108 |
|
|---|
| 109 | results = [phase+1];
|
|---|
| 110 | t = new Date;
|
|---|
| 111 | for (i = 0;i < 10000;i++)
|
|---|
| 112 | r1 = NDB.betasearch(SEARCH_WORD);
|
|---|
| 113 | results.push((new Date) - t);
|
|---|
| 114 |
|
|---|
| 115 | t = new Date;
|
|---|
| 116 | for (i = 0;i < 10000;i++)
|
|---|
| 117 | r2 = NDB.search(SEARCH_WORD);
|
|---|
| 118 | results.push((new Date) - t);
|
|---|
| 119 |
|
|---|
| 120 | results.push('"'+r1+'"');
|
|---|
| 121 | results.push('"'+r2+'"');
|
|---|
| 122 |
|
|---|
| 123 |
|
|---|
| 124 | var out = document.getElementById("out");
|
|---|
| 125 | out.appendChild( document.createTextNode(results.join(", ")));
|
|---|
| 126 | out.appendChild( document.createElement("br") );
|
|---|
| 127 |
|
|---|
| 128 | if (phase < 9)
|
|---|
| 129 | setTimeout(function(){bench(phase+1)}, 1);
|
|---|
| 130 | }
|
|---|
| 131 | </script>
|
|---|
| 132 |
|
|---|
| 133 | <title>nobjdb</title>
|
|---|
| 134 | </head>
|
|---|
| 135 | <body onload="test()">
|
|---|
| 136 | <a href="javascript:launch();">bench</a>
|
|---|
| 137 | <p id="out"></p>
|
|---|
| 138 | </body>
|
|---|
| 139 | </html> |
|---|