タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

JavaScriptとprogrammingとprototype.jsに関するraimon49のブックマーク (10)

  • JavaScript Garden

    JavaScript Garden はJavaScriptというプログラム言語の一番奇妙な部分についてのドキュメント集です。 このドキュメントはJavaScriptという言語に慣れていないプログラマーがこの言語について深く知ろうとする際に遭遇する、良くある間違い・小さなバグ・パフォーマンスの問題・悪い習慣などを避ける為のアドバイスを与えます。 JavaScript GardenはJavaScriptを教える事を目的にしていません。このガイドの項目を理解する為には、この言語に対する前提知識がある事を推奨します。この言語の基礎部分についてはMozilla Developer Networkのガイド がオススメです。 著者 このガイドは愛すべきStack Overflowの2人のユーザーIvo Wetzel (執筆)とZhang Yi Jiang (デザイン)によって作られました。 貢献者 貢献

    raimon49
    raimon49 2013/10/24
    数値リテラルをオブジェクトとして解釈させる方法、括弧以外にもドット2つとかあるんだ。メンテナンシビリティ下がるけどドヤ顔で使ってみたくなるTipsが色々ある。
  • プロトタイプ汚染とループ - latest log

    脳内棚卸 Prototype.js と プロトタイプ汚染(昔話) jQuery が登場する以前、Prototype.js という JavaScript ライブラリがありました。 Prototype.js は、JavaScript OOP の普及期(2005~2007年頃)に多くのサイトで活用されました。 Prototype.js は Object.prototype や Array.prototype 以下に、Ruby 由来のメソッドを拡張することで、 JavaScriptRuby 感をもたらし、ブームを起こしました。 当時の JavaScript(ES3: ECMAScript262-3rd) には、 言語仕様として Object.prototype を安全に拡張する方法が存在せず、 Prototype.js はしばらく後に 汚染(pollution) と呼ばれる問題を起こしてしま

    プロトタイプ汚染とループ - latest log
    raimon49
    raimon49 2012/11/07
    Object.keys(obj).sort()で事前ソート
  • JavaScriptでのbuilt-in/DOM objectのprototype拡張 - monjudoh’s diary

    @rosylillyが気にしていた のでまとめた。 built-in/DOM objectのprototype拡張による弊害 追加したプロパティ/メソッドがfor inで列挙される var obj = {a:1}; for (var i in obj) { console.log(i); } こうするとaだけ出るはずが、 Object.prototype.b=function(){}; こうした後だとa,bが出てしまうって奴ですね。 そのまま代入しないでObject.defineProperty/definePropertiesでenumerable:falseのプロパティとして定義すれば列挙されなくなるので特に問題ありません。 今回挙げるprototype拡張の弊害の内唯一これだけはECMAScript5時代になって解消されました。唯一これだけは。 built-in/DOM object

    JavaScriptでのbuilt-in/DOM objectのprototype拡張 - monjudoh’s diary
    raimon49
    raimon49 2012/09/05
    prototype拡張とラッパーオブジェクトの比較
  • $(DHTMLcoders).read(this) || throw your.job - 書評 - jQueryクックブック : 404 Blog Not Found

    2010年08月19日01:00 カテゴリ書評/画評/品評Lightweight Languages $(DHTMLcoders).read(this) || throw your.job - 書評 - jQueryクックブック オライリー矢野様より献御礼。 jQueryクックブック jQuery Community Experts / 株式会社クイープ訳 [原著:jQuery Cookbook] これでなくなった。 jQueryを使わない理由が。 DHTMLを利用する全ての人、必携。 特にHTMLCSSを書いても、JavaScriptはそれほど書かない人。これであなたにも書けるようになります。 書「jQueryクックブック」は、今や最重要のJavaScript Libraryといっても過言ではないjQueryの手引書。 目次 まえがき - John Resig はじめに jQuer

    $(DHTMLcoders).read(this) || throw your.job - 書評 - jQueryクックブック : 404 Blog Not Found
  • prototype.jsのbindを理解する - cloned.log

    prototype.js使っていてうれしいことの一つにbindが使えるというのがある。$()とかAjaxのクロスブラウザ対策とかもいいけれど、thisをbindできるのは大きなメリットだと思う。bindがないとどういう時に苦労するかというと、以下のような場面。 var Foo = function(name) { this.name = name; } Foo.prototype.talk = function(message) { alert(this.name + ": " + message); } function inScope() { var foo = new Foo("foo"); setTimeout('foo.talk("Hello World!")', 0); } inScope(); これは実行できない。なぜかというとsetTimeoutに渡しているfooという変数

    prototype.jsのbindを理解する - cloned.log
    raimon49
    raimon49 2008/09/22
    bindって要はapplyのラッパーですよ、という解説。
  • JavaScriptと二重否定 - NullPointer's

    prototype.js 1.5.1のソースでこれは何??、と、同僚に聞かれた。 Browser: { IE: !!(window.attachEvent && !window.opera), Opera: !!window.opera, WebKit: navigator.userAgent.indexOf('AppleWebKit/') > -1, Gecko: navigator.userAgent.indexOf('Gecko') > -1 && navigator.userAgent.indexOf('KHTML') == -1 }, 論理否定演算を二回行っていて一瞬ナンダコレと思ったが…にゃるほど。 var isXHRSupported = !!window.XMLHttpRequest 値が定義されていればtrueを取得する、ただそれだけだが、論理否定演算子を二重にする発想は

    JavaScriptと二重否定 - NullPointer's
    raimon49
    raimon49 2008/09/19
    definedとして使える二重否定。なる。
  • JSONPを用いてクロスドメインで情報を取得する - あくる日

    http://hail2u.net/blog/coding/jsonscriptrequest.html http://hail2u.net/blog/coding/jsonp.html この辺を読んで、賢いなぁと関心した。せっかくなので、早速やってみた。 ネタはたまたま作ってあったGoogle多数決で、あれはjsonのインターフェイスがあるので、これをちょっとだけ拡張する。最初にでき上がったものから→Not found まずはバックエンド。 return '('.JSON::Syck::Dump($struct).')'; こういうのを以下のように。 my $result = '('.JSON::Syck::Dump($struct).')'; $result = $self->query->param('jsonp') . $result if $self->query->param(

    JSONPを用いてクロスドメインで情報を取得する - あくる日
    raimon49
    raimon49 2008/05/28
    JSONPのサーバサイドからフロントエンドまでざっくりと。
  • Kanasan.JS #2 レポート & 資料: Days on the Moon

    関西での JavaScript 勉強会、Kanasan.JS #2 に行ってきました。今回は 9 時から 21 時という長丁場で、内容は前回に引き続き Prototype.js のコードリーディング。ただし、前回はバージョン 1.5.1.1 だったのが今回からは 1.6.0 を使用ということで、コードリーディングに先駆けて 1.6.0 での変更点に関するプレゼンテーションをやらせていただきました。他の参加者の方々のレポートなどは Kanasan さんの記事経由で読めるかと思います。 フリートーク 午前中はフリートーク及びプレゼンテーションということで、自己紹介の後雑多な話題に。 リファレンス どんな参考文書を利用しているかという話題。とりあえずググって出てきたページという方が結構いるようです。私も検索エンジンを使ったりもしますが、特定のサイトだとこんな感じです。 コア言語 ECMAScri

    raimon49
    raimon49 2008/01/14
    クロージャとPrototype.js 1.6のコードリーディング。
  • ハタさんのブログ(復刻版) : javascriptを初めて学ぶ人についてのおさらい。その2

    前回のエントリが700users突入しました。ありがとうございます。参考になれば幸いです。 ということで、その2になります。 前回書いた通り、C/Javaについてはある程度の知識がある人なので、クラスなどのオブジェクト指向はちゃんと理解されているようですが、プロトタイプ指向は初めて学ぶようです。 javascript(ECMAScript)のプロトタイプは他のプロトタイプ指向言語とはひと味違う動作をするので、その点も含めておさらい プロトタイプとはなんですか?プロトタイプとは継承パターンの一つでしかないです プロトタイプは単なる継承パターンであり、単一の方向への継承しか行わない点についてはクラスベースと同じです。 var Hoge = function (){}; Hoge.prototype.methodA = function (){ return "this is methodA

  • [ThinkIT] 第1回:Prototype.jsを使う準備 (1/2)

    筆者がPrototype.jsに初めて出会ったのは、2005年9月ごろだったと思います。この頃、オブジェクト指向JavaScriptはまだまだ黎明期で、オブジェクト指向の書き方もさまざまな我流が存在していたことを覚えています。 もちろん、筆者も我流のオブジェクト指向で書いていました。しかし、すべてのエンジニアが我流の書き方をしていては、JavaScriptのオブジェクト指向は普及しません。 そんな時にさまざまなブログで取り上げられ始めたのがPrototype.jsでした。Prototype.jsにはクラスを定義するという機能があり、すべてのエンジニアが同じ方法でクラスを定義できるのです。それは、大きなインパクトでした。しかし、その当時Prototype.jsにはまとまったドキュメントが無く、目利きのJavaScripterたちはこぞってソースを読んでいました。 そして、そのことが図らずとも

  • 1