連想配列
社内の勉強会でJavaScriptの配列、連想配列を扱った。Cしか使ったこと無い人には、カルチャーショックが大きかったようだ。
そのなかでも連想配列の強力さのアピールができたコード。
入力文字列の文字ごとの数を数えるコード。
'use strict'; // countChar.js function main() { var str; for (;;) { // 文字列入力 str = prompt('英数字を入力してください。', 'hello, world!'); if (str) { break; } } // 連想配列初期化 var asso = {}; var lenStr = str.length; for (var i = 0; i < lenStr; i++) { asso[str.charAt(i)] = (asso[str.charAt(i)]) ? asso[str.charAt(i)] + 1 : 1; } // 結果表示 for (var key in asso) { document.write(key + ': ' + asso[key] + '<br />\n'); } }
html側
document.writeの使用方法は良くない使い方だが、コンテンツは空なので、気にしない。
<html> <head> <title>連想配列操作</title> <script src="./countChar.js" type="text/javascript" > </script> </head> <body onload="main()"> </body> </html>