タグ

programmingとjavascriptに関するaki77のブックマーク (92)

  • amachang - JavaScript 入門

    プログラミングのこつ 無駄な名前を極力使わないこと。意味単位に名前空間を細かく階層的に分離すること。 ここで言う名前空間とは 名前空間とは、一つの名前が一意のものを表す空間。例えば、大きな目で見れば、日語は自然言語の名前空間である。また、専門用語なども名前空間と考えることが出来る。 日語 { コンニチワ = 挨拶 : : } 中国語 { ニーハオ = 挨拶 } 英語 { ハロー = 挨拶 } また、名前空間は重なり(優先順位)を持つ 同音異義語などの言葉は、それぞれの細かい名前空間の重なりによって一意のものに特定されると考えられる たとえば、「コイが好き」と言った場合 池に関する名前空間 { コイ = すいすいパクパク } チャライ話題に関する名前空間 { コイ = ドキドキきゅんきゅん } お茶に関する名前空間 { コイ = にがーい } 名前空間の優先順位を考えると、一意の意味を知

  • javascript - block代わりのclosureとその問題 : 404 Blog Not Found

    2009年01月19日18:15 カテゴリLightweight Languages javascript - block代わりのclosureとその問題 リハビリに手頃な問題だったので。 これ、実は「Java開発者のためのAjax実践開発入門」でも紹介されている書き方。 for 文と無名関数のイディオム - IT戦記 というわけで、これをすべて解決するのが for (var i = 0, len = list.length; i < len; i++) (function(node, i) { var text = node.textContent; node.onclick = function() { alert(text) }; })(list[i], i) なのだ。 ただし、コメント欄に残された問題が残る。 自分でも検証してみた。 n = : これ、デフォルトでは100万回にして

    javascript - block代わりのclosureとその問題 : 404 Blog Not Found
  • for 文と無名関数のイディオム - IT戦記

    id:cho45 がチョロっと書いたコードが話題になっている 冬通りに消え行く制服ガールは✖夢物語にリアルを求めない。 - subtech このような書き方は、自分もたまにする。 というわけで、この書き方をする利点を以下の順に解説して見る。 単純な for 文の問題点 with 文を使った解決方法と、その微妙な問題点 無名関数を使った解決方法 単純な for 文の問題点 まずは、以下の HTML に対して <ul> <li>hoge</li> <li>fuga</li> <li>piyo</li> </ul> 以下の JavaScript を実行して var list = document.querySelectorAll('ul > li'); for (var i = 0, len = list.length; i < len; i++) { var node = list[i]; v

    for 文と無名関数のイディオム - IT戦記
  • ハタさんのブログ(復刻版) : JavaScriptプログラマが理解しておくべき8つのこと。の個人的補足

    もう今年はブログを書かないんだろうなーと思っていたけど、ちょっと気になるエントリを見てしまったので、書いておくよ! ref - JavaScriptプログラマが理解しておくべき8つのこと - ++iskwn - キューイチ世代 いくか(8つ?)あるから、それぞれ勝手に全レスするよ! (先に断りを入れておくと、僕は専門家でもなんでもないから、指摘があったら指摘してください) たぶん、僕の書いた記事「javascriptを初めて学ぶ人についてのおさらい。その1」と「javascriptを初めて学ぶ人についてのおさらい。その2」を読めば全部理解するはず!(嘘偽有り) JavaScriptは完全なオブジェクト指向ではない これは書かれていることそのままかな。ただ、「プロトタイプベース」「インスタンスベース」という言葉の指摘をするのであれば「オブジェクト指向プログラミング言語ではない」のが正しい

  • グーグル、JavaScriptプログラミングツールをリリース

    Googleは米国時間11月5日、「Closure Tools」と呼ばれるプロジェクトをリリースし、同社のウェブサイトおよびウェブアプリケーション作成レベルに達することを望む開発者をサポートしていく方針を明らかにした。 Googleは、ウェブ中心のビジョンの一環で、JavaScriptを用いたウェブベースのプログラム記述を強く推進している。確かにGoogleは、「Gmail」や「Google Docs」などのサービスを通じて、JavaScriptを最大限に活用しており、より高速にJavaScriptプログラムを実行できるようにする目的もあって、「Chrome」ブラウザの開発に努めてきた。 しかしながら、JavaScriptプログラムは時に異なるブラウザ上では異なった動作をするなどの理由から、高機能なJavaScriptの記述、デバッグ、最適化は困難なものともなってきた。Googleがオープ

    グーグル、JavaScriptプログラミングツールをリリース
  • データ & アナリティクス | アクセンチュア

    データ分析から導き出されたインサイト無しにAI人工知能)の活用は始まりません。私たちは、各業界知識とデータ・アナリティクス技術を駆使しデータドリブン経営を強力に支援します。 データ、アナリティクス、AIは企業にとって競合他社との差別化を図るかつてないほど大きな要因になっています。今日の経営幹部が効率を向上しながら新たな収益源を開拓し、新しいビジネスモデルをタイムリーに構築する方法を模索する中、価値を生み出し成長を続ける企業には「データ活用」という共通項があります。私たちは、無数のデータから企業にとって当に必要なデータを活用するための方法を知っています。 将来を見据えたオペレーション体制を備えている企業の半数以上(52%)は、すでにデータとアナリティクスを大規模に活用しています。データとAIに関する取り組みをビジネス戦略に沿って実施することで投資利益率を迅速に最大化し、最終的にはAIをビ

    データ & アナリティクス | アクセンチュア
  • FAQ形式によるJavaScriptの本質がわかる超入門 - 風と宇宙とプログラム

    はじめに JavaScriptは簡単な言語のようでいて、実は奥が深く、初心者にとってなかなかその質がわかりにくい言語です。ここでは、JavaScriptの言語的エッセンスを理解できるようなものをFAQ形式で書いてみました。ご意見や誤り等を指摘してもらえたら嬉しいです。 なお、JavaScriptの標準化であるECMAScriptは、今年末にEdition 5 がリリースされる予定です。このFAQは、現在のバージョンであるEdition 3をベースにしています。 ECMAScriptって何ですか? ECMAはEuropean Computer Manufacturer Association(欧州電子計算機工業会)の略で、標準化団体です。NetscapeのJavaScriptMicrosoftのJScriptをベースに、純粋なプログラム言語部分を抽出したものをECMAで標準化したスクリプ

    FAQ形式によるJavaScriptの本質がわかる超入門 - 風と宇宙とプログラム
  • JavaScript正規表現メモ。 (JavaScriptでよく使う書き方。) - こせきの技術日記

    タイトル変えました。旧タイトル「JavaScriptでよく使う書き方」。よく使うけど毎回忘れる。 正規表現にマッチするかどうか。 RegExp#testを使う。 /abc/.test("abcdefg") // => true String#searchはマッチした位置を返す。マッチしない場合は-1。先頭にマッチすると0でfalseなので注意。真偽値が欲しい場合はString#searchを使わない。 "abcdefg".search(/xxx/) // => -1 "abcdefg".search(/def/) // => 3 "abcdefg".search(/abc/) == false // => true 正規表現の部分マッチを得る。 部分マッチを得るには、RegExp#execかString#matchを使う。execとmatchの速度は大して変わらない。 正規表現のベンチマー

    JavaScript正規表現メモ。 (JavaScriptでよく使う書き方。) - こせきの技術日記
    aki77
    aki77 2009/06/01
  • オブジェクト指向っぽい話が分かるかもしれないJavaScript講座 その1 | Takazudo Clipping*

    自分はスーパーJavaScripterでこんなすげーのが5行で書けちゃう。やばいだろ!とかいうのでは全然無いですが、オブジェクト指向っぽい話が最近分かってきたつもりで、それでやっときゃ問題無いってことを思い始めているので、なんかそんな話を書いていきます。 こんな短く書くテクニックがあるぜ! var hoge = hage ? huga : hoga; とか書けちゃうんだぜ!とかより、長くていいから分かりやすく拡張しやすいようにするにはどうするのかとか、そういう話ができればなーと思います。内容的には全くもって新しくも何とも無いですが。jQuery使ってやる前提です。 まんじゅう製造スクリプト 今日はまんじゅうを5個作ります。なんと、まんじゅうは、クリックすると隠れます。 まんじゅうサンプル var Manju = function(){ this.elem; this.hidden = fa

  • エンジニアの勉強法について

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは。 サービス統括部に所属しております、堀 邦明と申します。 普段はYahoo! JAPANトップページのフロントエンドエンジニアとして、JavaScriptPHP,Perlといった言語を利用して開発しています。 この度、デベロッパーズサミット2009というイベントにおいてエンジニア勉強法というテーマでJavaScript勉強法についてお話をさせていただきました。 今回は、そのときのお話について発表しきれなかった部分も含めてご紹介できればと思います。 勉強の分類 勉強には大きく分類して2つのステップがあると思います。 1. 情報収集 1つは情報収集です。 技術書やウェブサイト、ブログを読んだり、勉強会やセミナーに参加

    エンジニアの勉強法について
  • Firebugクックブック #1 - bits and bytes

    最近の中学生のはじめてのプログラミング言語がJavaScriptだったりするこの時代、最も使いやすいJavaScriptの実行環境であるFirebugは現代のコマンドラインです。UNIXコマンドラインでgrepやuniqを使って、日常の細々した処理を行うのと同じようにFirebugとjavascriptを使いこなせると、日常作業のちょっとしたことをさくっとこなすことができます。ちょっとした作業だから手作業でやってもいいけど自動でやればミスったりしないし、気分的には楽なので自動でやりたい、という作業がけっこうないでしょうか。例えば、ページの中の特定の部分の文字列をリストにしてテキストファイルに保存したい、とか。 そこで今回は私が普段よくやっている単純作業をFirebug+javascriptでさくっとかたづける方法を2回にわけてご紹介します。 ページの中からテキストや属性の値を拾う ページの

  • JavaScriptの変数のスコープについて学ぶ - builder by ZDNet Japan

    RPA見直される”業務”と”人”の関係 人的リソースを単純作業から解放! 高付加価値業務への転換のために Kubernetes活用の最適解とは? 今、注目のコンテナを活用した柔軟なIT基盤 運用、管理の課題を解決しメリットを最大化 今時プライベートクラウドの作り方 2020年代のプライベートクラウド環境を AzureとVMwareを例に紹介 高い従業員満足度と安心・安全 新時代にむけた理想の業務環境こそ Anywhere Workspaceが目指す未来 最新ストレージで変わるIT運用 仮想化テクノロジーとFlashArrayの組合せで 運用負荷軽減と高性能化を実現したDMM サービスを止めない! サイバーエージェントに聞く高可用性の実現 そこにピュア・ストレージが選ばれた理由 年間5,000件の問い合わせに対応 疑問を解消したいユーザーも答える情シスも みんな幸せになるヘルプデスクの最適解

  • JavaScript でテトリスみたいなゲームを作ろう! - セキュリティ&プログラミングキャンプ JavaScript 入門講座資料

    HTML とは HTML とは、誤解を恐れずに言ってしまうとウェブページ(ホームページ)を作るために使われている言語です。 例えば、以下のようなものが HTML です。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="ja"> <head> <title>タイトル</title> </head> <body> <h1>見出し</h1> <p> 文<a href="hoge.html">ハイパーリンク</a>文 </p> </body> </html> サンプル イメージ湧きましたか? では、何故 HTML という

  • 群れのモデルをJavaScriptで実装してみた

    今回、群れのモデルにチャレンジしてみた理由ですが、Life is beautifulの以下のエントリがきっかけでした。 ネットの時代には「知識量・記憶力」よりは「適応力・応用力」の方がずっと大切より 先日の「<a href="http://satoshi.blogs.com/life/2007/05/ui.html">習作UI: 縁日の金魚を再現してみた</a>」というエントリー。特に深い意味もなく作ったのだが、ソフトウェア・エンジニアを目指す学生さんのためにひとこと付け加えておきたいのは、この業界で気で成功しようと思ったら、この程度のプログラムは、シミュレーションの専門家でなくともサクッと作れるように自分を鍛えておかなければいけない、ということ。 正直あまりJavaScriptが得意ではないのですが、最近あまりプログラムを書いていなかったので、さすがにまずいと思い自分への課題として、サ

    群れのモデルをJavaScriptで実装してみた
  • (function(){})() と function(){}() - IT戦記

    自分用メモ // JavaScript でクロージャを書くときこう書く事が多い (function() {})() // 何故なら // function() {}() // と書くと // function() {} が式ではなく、文として解釈されてしまうからだ。 // 文として解釈されないためには、文の途中(最初以外)に function と書いてやる必要がある // なので、まず開きカッコを書いてやる。 ( // の後に function() {} // と書いてやると function は式になる ) // 正確には、カッコの対は The Grouping Operator という演算子である。 // カッコ以外にも var a = // のように代入演算子のあとでもいい function() {} // つまり、以下のような記述も可能である。 var b = function()

    (function(){})() と function(){}() - IT戦記
  • ハタさんのブログ(復刻版) : javascriptを初めて学ぶ人についてのおさらい。その2

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

  • ハタさんのブログ(復刻版) : javascriptを初めて学ぶ人についてのおさらい。その1

    僕にも教える人ができた(? というか人にモノを教える立場)になったので、とりあえず、最近はもっぱらjavascriptを教えています。 もともとCやJavaなどについてはある程度の知識がある人なので、それを少しjs的な意味で、関数言語的な教えをやっている最中のメモ 変数って何ですか?変数って値もしくは式そのものに利便的な名前をつけているものです 次のhogeとfooは値をいれる箱ではなく、値そのものに別名(もしくは分かりやすい名称)を割り当てているだけに過ぎませんよ。 var hoge = 1; var foo = [1, 2, 3]; alert(hoge + 1); // 2 alert(foo[0]); // 1 alert(1 + 1); // 2 alert([1, 2, 3][0]); // 1 つまり、関数自体を変数に代入する事ができます。(functionとは特別な呼び名

  • for 文を setTimeout に変換する - IT戦記

    for 文で 100 項目とか 1000 項目とかあるテストケースを処理するとブラウザが固まる。 こんなダイアログが表示されます。 ということで for 文を setTimeout や setInterval に変換する事で定期的にブラウザに処理を戻すことができる。 // ここでは console.log のところでログを取ってますが // 通常は処理が入ります。 for (var i = 0; i < 3; i ++) { console.log('a' + i); } /* * 結果 * a0 * a1 * a2 */ これをまず while 文に変換 var i = 0; while (true) { if (!(i < 3)) break; console.log('a' + i); i ++; } /* * 結果 * a0 * a1 * a2 */ で、 setTimeout に

    for 文を setTimeout に変換する - IT戦記
  • Steve Yegge、RailsをJavaScriptに移植する

    John Lam / 青木靖 訳 2007年6月24日 Foo Campで私が最初に行ったのは、「GoogleRailsクローン」と題するSteve Yeggeの講演だった。このタイトルを見てどうして聞かずにいられようか? Googleはプログラミング言語として、C++JavaPythonJavaScriptの4つを使っている。WebのフロントエンドJavaで書きたがる人がそういるとは思えないが、それはWebフロントエンド用のJavaコードをたくさん持っているGoogleにしても 同じだ。 Googleにおける開発者の生産性を引き上げるため、Steveは会社にRails(したがってRuby)を言語として採用するように訴えたが、それが叶わないとなると(Googleはインフラでサポートしなければならない言語の数を増やすのをとても嫌っている)、 彼は欲求不満のプログラマがみんなするだろ

  • 【コラム】そろそろきっちりJavaScript 第1回 "Firebug"の導入〜関数リテラルとは? (MYCOMジャーナル)

    多彩な演出効果をカンタンに導入できる事で脚光を浴びたprototype.jsの登場を皮切りに、インターネットで公開されているJavaScriptライブラリの数は、この一年で急激に増加した。何かやりたいことがあったときはWebで検索すれば、大抵、どこかにライブラリが転がっている。便利な世の中になったものだ。 一方、Webを通じて提供されるサービスは多様化の一途を辿っている。JavaScriptライブラリは整ってきたが、当然、置くだけでは機能しない。ライブラリのサポートページには簡単なサンプルが載っているものの、サンプルがそのまま適用できるケースはごくわずかだ。しかたなく、他の誰かが似たような事をやっていないかとWeb検索するはめになる。 思えば、これまでJavaScriptを言語としてとらえ、きっちり向き合う機会は少なかったのではないだろうか。 1995年の終わり、Netscape Navi