JavaScript

2pt

今までにないおもしろい言語。未来に生き残る言語はこれかも

オブジェクト(連想配列)の順序

http://d.hatena.ne.jp/holidays-l/20061206/p2
仕様では順序は保証されないらしい。
念のためIE6, IE7, Firefox2, Firefox3, Opera9.5, Safari3, Chromeで要素数増やした下記コードで調べてみても順序通りでした。

var a = {
    'a':1, 'b':1, 'c':1, 'd':1, 'e':1, 'f':1, 
    'g':1, 'h':1, 'i':1, 'j':1, 'k':1, 'l':1, 
    'm':1, 'n':1, 'o':1, 'p':1, 'q':1, 'r':1, 's':1
};
for (var i in a){
  document.write(i);
}
document.write('<br>');
a.t = 2;
a.u = 3;
a.v = 4;
a.w = 5;
a.x = 6;
a.y = 7;
a.z = 8;

delete a.a;
delete a.c;
delete a.f;
for (var i in a){
  document.write(i);
}


Argumentsオブジェクトを配列にする

var array = Array.prototype.slice.call(arguments, 0, arguments.length);

nullなら空のオブジェクトにする

hoge ||= {};

グローバル空間を使わないようにする

(function(){
  ...
})();

型変換

via http://www.ideaxidea.com/archives/2010/03/javascript_type_co...
良く見る"!!" はbooleanへの型変換だったのか

var myVar   = "3.14159",
    str   = ""+ myVar,//  to string
    int   = ~~myVar,  //  to integer
    float = 1*myVar,  //  to float
    bool  = !!myVar,  /*  to boolean - any string with length and any number except 0 are true */
    array = [myVar];  //  to array

10 Small Things You May Not Know About Javascript

http://samuli.hakoniemi.net/10-small-things-you-may-not-know...

window.name session


window.name はブラウザ、タブを閉じるまで有効な空間

undefinedチェック

typeof foo != "undefined" でもいいが、
window.foo でOK

引数のデフォルト

function hoge(a){
  a = a || {};
}

createDocumentFragment

え、何だこれ!DOM作成の一時領域?知らなかった…。


「JavaScript」について友人に書いてもらう。

あなたにとって「JavaScript」とは?

ログインするとワンクリックでキーワードを投稿できます

ログインする 新規登録する

お気に入りの説明

2 pt
サーバサイド言語は色々あるがクライアントサイドはこれ1択 昔ながらの「片手間に書くJavaScript」の限界 - mizchi's blog あなたはJavaScriptを知らない - 杉風呂2.0 - A Lifelog - Hac...
もっと読む
0 pt
言語としておかしい。 型ないとかありえへん。 見にくい言語の一つだと思てます。
もっと読む
0 pt
通常は クライアント サイド( ブラウザ 側)で動かすスクリプト。 サーバー サイドと違って、あんまりデータ処理的な事はしない。 どちらかというと、 ブラウザ ・ CSS ・ html ・ object なんかを...
もっと読む
0 pt
jQuery と一緒に使うと威力100倍。
もっと読む

他の人の「JavaScript」を見る