タグ

Javascriptに関するhatz48のブックマーク (194)

  • JavaScript基本概念最速マスター - TechTalkManiacs

    プログラミング言語の文法をまとめた最速基礎文法マスターが流行っていますが、それだけだと物足りないので少し視点を変えてJavaScriptという言語の基礎となっている概念について簡単にまとめてみようと思います。(基礎文法についてはこちらを参照してください) (20010/2/4 記述ミス Typoなどを修正しました) JavaScriptの基概念 JavaScriptの基となる概念は次の二つです。 連鎖指向 全てがオブジェクト 連鎖指向はプロトタイプチェーンやクロージャ、全てがオブジェクトであるという性質は連想配列やプリミティブ型などの性質に関わってきます。 連鎖指向 JavaScriptでは変数、オブジェクト、メソッドなどのリソースの利用において鎖のようにリソースを定義や宣言できるポイントが連なり、一番近くの宣言や定義に基づいてリソースの内容が決定される、という仕組みが採用されています

    JavaScript基本概念最速マスター - TechTalkManiacs
  • Collection & Copy - JavaScriptにおけるプライベートメンバ

    JavaScriptにおけるプライベートメンバ 翻訳 原文:Private Members in JavaScript Copyright 2001 Douglas Crockford. All Rights Reserved Wrrrldwide. JavaScriptJavaScript: 世界で最も誤解されたプログラミング言語です。JavaScriptのオブジェクトが、プライベートなインスタンス変数およびインスタンスメソッドを持てないため情報を隠蔽する能力が欠けていると思われることがあります。しかし、これは誤解です。JavaScriptのオブジェクトは、プライベートメンバを持つことができます。その方法は以下です。 オブジェクト JavaScriptはオブジェクトを基礎としています。配列はオブジェクトです。関数もオブジェクトです。オブジェクトもオブジェクトです。それならば、オブジェク

  • Life is beautiful: Javascript、クロージャを使ったプライベート関数の隠蔽について

    (このエントリーは「Javascriptクイズ:無名関数と実行効率の話」の続編。) 「???」と頭をかしげる太郎に、「じゃあ、これだったらどうかな?」と三郎はコードを書き始めます。 function code2name(code) { var mapping = { 'us': 'United States', 'ja': 'Japan', 'ko': 'Korea', 'ru': 'Russa', 'uk': 'United Kingdom', 'fr': 'France', 'cc': 'China', 'gw': 'Germany' }; return mapping[code] || '(unknown)'; } 「カントリーコードを国名に変換しているんですね。」と太郎。 「どこが問題だか分かる?」 「うーん、マッピングのためのオブジェクトを毎回作り直しているところかな。」 「そう

  • IT NEWS

    1:5ch名無し民2022/06/14(火) 15:46:19.23ID:CAP_USERイーロン・マスク氏のツイート「日はいずれ消滅する」がNHKで取り上げられるなど国内で大きなニュースとなった。人口減少の日はこのまま衰退の一途をたどるしかないのか?  そこに異を唱えるのがマスク氏と同じく実 【楽天・三木谷「日消滅を避けるために移民を受け入れるべき」】の続きを読む

    IT NEWS
  • JavaScript Shell

    JavaScript Shell A command-line interface for JavaScript and DOM. Open the shell or get the Shell bookmarklet (Firefox only). Features You can enter statements and expressions at the same prompt. The result of each non-void statement or expression is shown. User-defined variables. b = document.body User-defined functions. function f() { return 5; } JavaScript error messages are shown in red. Previ

  • EmacsでJavaScriptソースを快適に読むために:js2-modeとエグズーベラントCtags - 檜山正幸のキマイラ飼育記 (はてなBlog)

    「横道にそれすぎ」に書いた事情で、EmacsでJavaScriptソースコードを読む環境を少し整えようかと。 次の2つのツールを導入してみよう、っと。 js2-mode: http://code.google.com/p/js2-mode/ エグズーベラント(EXUBERANT)Ctags: http://ctags.sourceforge.net/ 内容: より良いEmacs JavaScriptモード -- js2-mode 強烈なタグファイル作成ツール -- エグズーベラントCtags エグズーベラントCtagsを調べてみる EmacsでJavaScriptソースを読む ●より良いEmacs JavaScriptモード -- js2-mode 以前(2006年7月)、ひげぽんさんの記事で、「ecmascript-mode.el < javascript.el みたいだ」と書いてあった

    EmacsでJavaScriptソースを快適に読むために:js2-modeとエグズーベラントCtags - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • JavaScript(AJAX)サンプル集 Yahoo! User Interface Library(YUI) - Calendar

    スポンサードリンク Yahoo! User Interface Library - Calendar YUI Calendarとは Calendar componentはグラフィカルなカレンダーでユーザーが日付を選択できるようになります。JavaScript Onlyなので、ページのリフレッシュは必要ありません。 詳しくはhttp://developer.yahoo.com/yui/calendar/のオリジナルを読まれるのがよいと思います。 Calendarを使う前準備 必要なのは5つのファイルです。もちろんインストールは済ませておく必要があります。 <script type="text/javascript" src="your install path/yahoo-min.js"></script> <script type="text/javascript" src="your i

  • DOM - MDC

    ドキュメントオブジェクトモデル (Document Object Model, DOM) は、ウェブページを表す HTML のような文書の構造をメモリー内に表現することで、ウェブページとスクリプトやプログラミング言語を接続するものです。ふつうは JavaScript を使用しますが、HTMLSVG、XML などの文書をオブジェクトとしてモデリングすることはコア JavaScript 言語の一部ではありません。 DOM は文書を論理的なツリーで表現します。ツリーのそれぞれの枝はノードで終わっており、それぞれのノードがオブジェクトを含んでいます。 DOM のメソッドでプログラム的にツリーにアクセスできます。これにより、文書構造やスタイルやコンテンツを変更することができます。 ノードにはイベントハンドラーを割り当てることができます。イベントが発生すると、イベントハンドラーが実行されます。 DO

    DOM - MDC
  • 第3回 JavaScriptで非同期通信を実装する

    JavaScriptによる非同期通信の仕組み ここまでは,Ajaxを支える技術としてJavaScriptでユーザー・インタフェースを実装する仕組みを紹介した。続いて,JavaScriptによる通信の実装について見ていこう。よく見かけるAjaxの紹介記事は,この通信の実装方法に重きを置いていることが多い。なぜなら,Ajaxという方法論が普及する前は,JavaScriptのコードから通信をしようなどとと考える人はおそらく少数派だったからであろう。 JavaScriptでHTTP通信を行うには,一般にXMLHTTP,またはXMLHttpRequestと呼ばれるオブジェクトを利用する。ただし,注意しておくことが二つある。一つは,XMLHttpRequestの実装方法はブラウザの種類やバージョンによって異なるという点,もう一つは,「クロスドメインの制限」と言って,現在表示しているHTMLを取得したサ

    第3回 JavaScriptで非同期通信を実装する
  • Ajax初心者入門講座

    Ajax (エイジャックス)とは、Asynchronous JavaScript + XML の略で、非同期通信を利用してデータを取得したり、動的にウェブページの内容を書き換える技術のことです。アジャックスと発音することもあります。 Ajaxという名称は、2005年2月にJesse James Garrett氏によって名付けられました。Ajaxは新しい技術というより、既存の技術を組み合わせたものです。Ajaxの中心技術である JavaScript や XML、CSS は Ajaxという名称が普及する前から既に使われていました。 しかし技術に名前が付けられたことの意味は大きく、Google Map などに利用されたこともあり、一気にAjaxの可能性が注目されました。 しかも動作に必要なのはWebブラウザだけであることや、デスクトップアプリケーションのような操作性が実現できることから、実用性が

    Ajax初心者入門講座
  • DOM Rangeについて色々 - Personnel

    これまで、Rangeインターフェイスはテキストの選択範囲を操作する、それだけの仕様だと思っていました。しかし、DOM CoreやHTMLでは面倒で、コードが煩雑になりがちだった複数の要素に関する操作が、Rangeインターフェイスを利用することで直感的かつ直接的な操作になり、とても扱いやすくなることが分かりました。現在では個人的に、DOMで文書ツリーを扱う時には常に傍らにいてもらいたい介さんのような存在になっています。取りあえず呼んでおけ、みたいな。 以下、とてもありがちな要素に関する操作を、CoreやHTMLのみを用いた方法とRangeを利用した方法で行い、その比較を行います。 Foot note この記事のURI参照 http://members.jcom.home.ne.jp/jintrick/Personal/DOM_Range.html#MISUNDERSTANDING D

  • setInterval/JavaScriptリファレンス

    JavaScript Reference setInterval 関連オブジェクト : window、Frame タイプ : メソッド 書式 変数(省略可) = setInterval(関数名,ミリ秒) サンプル <body onload="setInterval(myTimer,1000)"> 指定した時間毎に繰り返し処理をするタイマーを設定します。このメソッドで指定したタイマーは、clearInterval()メソッドを実行しない限り解除されることがありません。 このメソッドのサンプルは、JavaScript入門の ストップウォッチを参照してください。 Top / Home / Index / Next

  • IT戦記 - JavaScript を学ぶ際に一番重要なのに、誤解されがちな setTimeout 系の概念

    おそらく、JavaScript を使いこなす肝は setInterval、setTimeout、イベントによる関数の実行を理解することだと思う 例えば 次のコードの結果を考えたとき document.write("hoge\n"); setTimeout(function(){ document.write("fuga\n") }, 1000); document.write("piyo\n");普通に JavaScript を使いこなしてる人なら、hoge → piyo と表示して、 1 秒後に fuga が表示されるな。って思うはずなんです。 でも、 JavaScript を始めたばっかりの人の中には、 hoge と表示したあと 1 秒後に fuga → piyo と表示するな。って思ってる人が非常に多い。(経験的に) 何故か? たぶん、どのサイトの setTimeout の説明を見て

    IT戦記 - JavaScript を学ぶ際に一番重要なのに、誤解されがちな setTimeout 系の概念
  • 404 Blog Not Found:javascript - ページはいつ再描画されるか

    2006年09月23日01:30 カテゴリLightweight Languages javascript - ページはいつ再描画されるか 大変に有用な考察だが、一つ重要な指摘漏れがある。 IT戦記 - JavaScript を学ぶ際に一番重要なのに、誤解されがちな setTimeout 系の概念 setInterval、setTimeout、イベントによる関数の実行を理解することだと思う ページがいつ再描画されるか、ということである。 未経験者は、document.write()やelement.innerHTML = "foo"のように、ブラウザーに「書き出した」点でそれが直ちに反映されると思うだろう。 ところが、そうではないのである。 実例を見てみよう。以下のscriptを考えてみる。ボタンを押すと、ボタンのラベルが1000から1までカウントダウンした後、元通りになることを意図してい

    404 Blog Not Found:javascript - ページはいつ再描画されるか