2011-02-01から1ヶ月間の記事一覧
関数宣言パターンでは、読み取り専用のnameプロパティが利用できる。 ただし、値はブラウザによって異なる。 <script type="text/javascript"> function foo(){}; var bar = function(){}; var baz = function baz(){}; alert(foo.name); alert(bar.name); alert(baz.name); </script> Firefox3.6.13…
■JSON→JavaScriptオブジェクト var javascript_obj = JSON.parse(json); jQueryの場合は、parseJSONを使用できる。 var javascript_obj = JSON.parseJSON(json); ■JavaScriptオブジェクト→JSON var json = JSON.stringify(javascript_obj);
平たく言えば、コンストラクタを使用するときはnewを使えってことだね。 //これはOK var constructor_ok = new Method(); //これは使うな var constructor_ng = Method(); ECMAScript5でstrictモードだと、thisはグローバルオブジェクトを指さないようになる…
{}という最も簡単なオブジェクトでも、Object.prototypeから継承したプロパティとメソッドを持っている。
$()はdocument.getElementById()の別名のようだが、それはprototype.jsの場合。 jQueryの場合、似ているが、完全に同じではないようだ。
prototypeオブジェクトとは、「全ての関数が」持つオブジェクト。 全てのオブジェクトが持つのではなく、全ての関数が持つのである。下記コードでは、 true,false,false,trueと表示される。 var func = function(){ var test = "test"; }; var man = { hands…
JavaScriptでは、変数を比較するとき暗黙の型変換が行われる。暗黙の型変換とは、例えば、if文の条件式では、undefinedや0がfalseに変換されることである。 if(undefined){ //undefinedはfalseに型変換されて評価されるため実行されない } 暗黙の型変換が行…
結論は、下記である。 プロトタイプ連鎖から来たプロパティを除外するために、メソッドhasOwnProperty()を使用する まず、プロトタイプとは何か。 これは「全ての関数オブジェクトが保持するprototypeというプロパティ」のことだ。で、あるオブジェクトのプ…
高速化の話でよく出てくるが、forループを書く際は、下記お作法に従うべき。 配列(コレクション)の長さをキャッシュしておく i++は、i = i+1と書くか、i += 1と書く 0にカウントダウンする //良くない例 for(var i = 0; i < array.length; i++){ //処理 } …
windowをハードコーディングせずにグローバルオブジェクトにアクセスする必要があるときは、以下のようにすれば、入れ子になった関数のどこからでも実行できる。(JavaScriptパターンp13に書いてあった) var global = (function(){ return this; }());
結論から言えば、 暗黙のグローバルは、deleteで削除できる。 明示的なグローバルは、deleteで削除できない。 //明示的なグローバル var explicit_global =1; //暗黙のグローバル implicit_global = 2; //falseが表示される alert(delete explicit_global); …
今週の土日は、静岡へ行ってきました。 目的は、飲み会。大学の寮の仲間で、毎年飲み会を行っている。今年は静岡だった。今年も美味しいお酒と食べ物を堪能した。それにしても、静岡県の日本酒「磯自慢」はやはり美味しい。 蓬莱泉も美味しいのだが、磯自慢…
jQueryの$.ajaxを使用して、非同期通信が成功した場合に、window.openを使用してウィンドウを開く方法について述べる。結論は、$.ajaxの非同期通信成功時に実行されるコールバック関数successで、window.openを実行すればよい。 $.ajax({ url: "非同期通信先…
さいてい。。。
JavaScriptには、暗黙のグローバルという概念がある。 そのため、意図せずにグローバル変数を作成してしまい、それが問題となる場合がある。 意図しないグローバル変数を作成してしまう危険性があるのは、下記2つの場合。 宣言しない変数を使用した場合 var…
SDKはSoftware Development Kitの略。当然知っていたのだが、2011.1 Nikkei Linuxの特別連載「HTML5でつくるAndroidアプリ」の中で、 SDKをStandard Development Kitと書いていたので、「あれ?」と思ったしだい。
タッチパッドに手が触れて、キー入力をしているときに思わぬところにカーソルが移動したり、思わぬところで送信してしまったり、何かと不自由していた。そのため、外部マウスを接続しているときは無効にした。 コントロールパネル →ハードウェアとサウンド →…
忘れないためのメモ。以下のsamplef$.ajaxの外で定義された、argは$.ajaxの通信成功時のコールバック関数success内で有効のようだ。 var samplefunc = function(){ var arg = 'test'; $.ajax({ url: "page.php", processData: false, data: xmlDocument, suc…
ブルームバーグというサイトがあるのか。 知りませんでした。http://www.bloomberg.co.jp/?JPIntro=jpintro
Androidアプリを開発するために、新規プロジェクトを作成した際の問題。【環境】 ・OS:Windows7 HoemPremium 64bit ・eclipse3.6.1 - pleiadesを使用して日本語化済 ・Android SDK r9 ・jdk1.6.0_23【エラー内容】 新規プロジェクトを作成(HelloAndroid)…