バリケンのJavaScript日記 RSSフィード

2006-10-25

[] Core JavaScript 1.5 Guide 日本語版を読む(6)  Core JavaScript 1.5 Guide 日本語版を読む(6) - バリケンのJavaScript日記 を含むブックマーク はてなブックマーク -  Core JavaScript 1.5 Guide 日本語版を読む(6) - バリケンのJavaScript日記  Core JavaScript 1.5 Guide 日本語版を読む(6) - バリケンのJavaScript日記 のブックマークコメント

きょうもCore JavaScript 1.5 Guide 日本語版「第3章 コア言語の機能」を引き続き読んでいくよ。

今日も気になったところをメモするよ。

真偽値リテラル

真偽値型は、trueと書いたら「trueプリミティブ値」、falseと書いたら「falseプリミティブ値」になるみたいだよ。

配列リテラルと違って、真偽値リテラルは「Booleanオブジェクトではない」ことに注意してね。プリミティブ値とオブジェクトとの違いは、こちらにある興味深い実験を参考にしてね。

[] prototype.jsで遊ぶ(2)  prototype.jsで遊ぶ(2) - バリケンのJavaScript日記 を含むブックマーク はてなブックマーク -  prototype.jsで遊ぶ(2) - バリケンのJavaScript日記  prototype.jsで遊ぶ(2) - バリケンのJavaScript日記 のブックマークコメント

昨日は落ちていたprototype.jsの配布元のサイトが復活したみたい!

じゃあ、今日もちょこっとprototype.jsで遊んでみるよ。今日はinjectメソッドを試してみるよ。以前「たのしいRuby」で解いた問題JavaScriptで解いてみることにするよ。

function print(s) {
  WScript.StdOut.Write(s);
}

function load(filename) {
  var fso = WScript.CreateObject("Scripting.FileSystemObject");
  var fs = fso.OpenTextFile(filename, 1, false, -2);
  eval(fs.ReadAll());
  fs.Close();
}

try {
  load("prototype-1.4.0.js");
} catch(e) {
}

var ary = [];
for (var i = 0; i < 100; i++) {
  ary[i] = i + 1;
}

print(ary.inject(0, function(sum, item){ return sum += item; }));

これをinject_test.jsというファイル名で保存して、cscriptで実行してみるよ。

>cscript inject_test.js
Microsoft (R) Windows Script Host Version 5.6
Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.

5050
>

こうして見ると、prototype.jsを使うとJavaScriptがかなりRubyっぽくなることがわかるねえ。

トラックバック - http://javascript.g.hatena.ne.jp/muscovyduck/20061025