タグ

ブックマーク / amachang.hatenablog.com (12)

  • 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戦記
  • Windows Vista 搭載パソコンを買ってきてやったことまとめ - IT戦記

    日曜日です ところで、今の Windows XP 機 4 年前の 12 月に買った ちょうど 4 歳 ノートなのにバッテリ 5 分くらいしかもたない 買い替えよう というわけで、 Windows Vista 搭載パソコンを買いにいきました。 いざ、秋葉原! 秋葉原にて ネットブックとかイーモバイルの勧誘に目もくれず、安いパソコンを探す。 で、結局 \99,800 + ポイント 10% で http://www.acer.co.jp/products/notebook/tm5730/index.html を買った。 買った理由としては、 比較的安かった メモリが 2 GB で 1 スロットしか使ってない 2GB 足して、 2 GB + 2 GB のデュアルチャンネルで動作させたい メモリはパソコンのポイントで買える という感じ。 どのメモリが、デュアルチャンネルで動作するか分からなかったので

    Windows Vista 搭載パソコンを買ってきてやったことまとめ - IT戦記
  • JavaScript はどのように実行されるか - IT戦記

    JavaScript はどのように実行されるか Safari*1 の実装を例に JavaScript はどのようにして実行されているかを書く。自分用のメモ。日語の出来は気にしない 1. ブラウザを起動して以下のようなページを開いたとする <html> <head> <script> var a = 1; var b = 2; alert(a + b); </script> </head> <body> </body> </html> 2. インターネットからデータが到着する そうすると WebCore::FrameLoader::write という関数に生の文字列が渡される。型は char* だ。 http://trac.webkit.org/browser/trunk/WebCore/loader/FrameLoader.cpp#L990 この関数の中では、到着した文字の文字コードを解

    JavaScript はどのように実行されるか - IT戦記
  • ブラウザでお絵描きプログラミング! Processing.js 登場! - IT戦記

    はじめに 今日、 jQuery の作者として有名な John Resig さんが Processing.js という JavaScript のライブラリを公開しました。 John Resig - Processing.js このライブラリを使うと、比較的簡単に以下のようなグラフィックスやアニメーションを書くことができるようになります。 というわけで、公開されたばかりのこのライブラリを簡単な使い方から詳しい使い方までとことん掘り下げてみたいと思います。 Processing.js 概要 まず、 Processing.js とは何かという話をします。 Processing.js とは、ブラウザで Processing というプログラミング言語を実行する JavaScript のライブラリです。 では、 Processing とはどのようなプログラミング言語なのでしょうか。 Processing

    ブラウザでお絵描きプログラミング! Processing.js 登場! - IT戦記
  • インターネットで手に入れられても良さそうなのに手に入らない情報まとめ - IT戦記

    以下の質問の反応をまとめてみます。 役に立ちそうな情報で、インターネットで手に入れられても良さそ… - 人力検索はてな 質問の回答、はてブ、トラックバック、ダイアリーのほうについたはてブ、コメント、などを集計しています。 まとめ ニュースのその後 (id:jane) 雑誌の記事検索 (id:natumi0128) 「SPA!」「読売ウイークリー」「AERA」は出来る → http://news.nifty.com/cs/entame/showbizddetail/fuji-320080417006/1.htm (id:muddydixon) タバコの製品情報(電話でのユーザ登録が必要なため困難。不可能ではない)→ https://www.jtad.jp/members/login/ (id:n-styles) 新聞折込チラシ (id:n-styles) スーパーの特売情報 (id:n-st

    インターネットで手に入れられても良さそうなのに手に入らない情報まとめ - IT戦記
  • Re: 一晩で覚えるjQueryの逆引き基礎サンプル7つ*ホームページを作る人のネタ帳 - IT戦記

    最後の解決法を悩んでるようなので、僕の回答。 入力補助の情報は HTML より、 JavaScript で持ったほうがいいかもしれません var data = { title1: ["hoge", "fuga", "piyo"], title2: ["hoge", "fuga", "piyo"], title3: ["hoge", "fuga", "piyo"] }; $(function(){ $("div.hoge > div.menu > a").click(function () { var d = data[this.title]; $('div.hoge > input').each(function(i) { $(this).val(d[i]) }); return false; }); }); でも、↑これだと、クリック時に毎回 input を探すので、パフォーマンスを気に

    Re: 一晩で覚えるjQueryの逆引き基礎サンプル7つ*ホームページを作る人のネタ帳 - IT戦記
  • XPathGraph がすごい件と、XPath で出来ることのヒント - IT戦記

    XPathGraph とは http://xpath.kayac.com/ URL と XPath を指定すると一日に一回その URL をスクレイピングして XPath 式が示す値をグラフにしてくれる!という画期的なサービスです。 例えば、 URL と XPath を指定するだけで以下のようなグラフが作れてしまいます。 当に楽しいことが出来そうでワクワクしてます! でも まだ XPath を登録している人が意外と少ないので、「ひょっとして、このサービスの使いどころが分からないのかなあ。」と思いました。 というわけで XPath で出来ることのヒントを少し紹介したいと思います。 足し算、引き算、かけ算、割り算 XPath では普通に数値の演算ができます。 たとえば、 //div[@class=counter] で取得してきた div 要素が 1000 という数値を持っていたとすると 2 *

    XPathGraph がすごい件と、XPath で出来ることのヒント - IT戦記
  • CSS の名前の整理 - IT戦記

    CSS の話をする時に 名前をはっきりさせてないと混乱するので、整理しておこう。自分用です。けっこう適当です。 仕様 ここの仕様を見て書いています。 CSS Syntax Module Level 3 CSS語では「スィーエスエス」と言いますね。 CSS とはHTML, XML の要素をどのように表示するかを示すための仕様のことです。 style sheet 日語では「スタイルシート」と言いますね。 これはすごくやっかいな言葉です。以下の二つ意味があるからです。 HTML, XML の表示形式を制御する概念のこと。 CSS は、このスタイルシートという概念を実現するための一つの仕様。 CSS の仕様に従って書かれたファイルや style 要素の内容。簡単にいうと css ファイルや style 要素の内容一個一個がスタイルシート。このエントリでは、こっちのほうは「CSS スタイルシ

    CSS の名前の整理 - IT戦記
    kishir
    kishir 2008/04/07
  • すべてのオブジェクトをキーにできるハッシュの様なもの - IT戦記

    どうやったら効率的なものを書けるだろうか Dictionary = function() { var self = function(k, v) { var state = self.state; if (v === undefined) { return state(k); } else { self.state = state(k) === v ? state : function(a) { return a === k ? v : state(a) } return v; } }; self.state = function(k) { return undefined }; return self; }; var dict = new Dictionary; dict(1, 2) dict('1', 3) var f = function() { hoge }; var g = fu

    すべてのオブジェクトをキーにできるハッシュの様なもの - IT戦記
  • javascript でメモ化 - IT戦記

    Function.prototype.state = function() { return undefined }; force = function(v) { return typeof v == 'function' && v.length == 0 ? force(v()) : v; }; memo = function(f, k, v) { var state = f.state; f.state = f.state(k) !== undefined ? state : function(a) { return a === k ? v : state(a) } return v; }; memoise = function(f) { return function(k) { var v = f.state(k); return v !== undefined ? v : memo

    javascript でメモ化 - IT戦記
  • 「再帰→ループ」の変換が大変だった件 - IT戦記

    まず、ループは再帰で表現できる ループというのはすべて再帰呼び出しで表現できる。 たとえば、コレは var array = [1, 2, 3]; for (var i = 0; i < array.length; i ++) alert(array[i]); こんな感じになる (function f(array, i) { if (i < array.length) { alert(array[i]); return f(array, i+1); } })([1, 2, 3], 0); もし、 array がこの目的以外に使われないならコッチのがキレイかも (function f(array) { alert(array.shift()); if (array.length) return f(array); })([1, 2, 3]); ということは、再帰はループで表現できるはず という

    「再帰→ループ」の変換が大変だった件 - IT戦記
  • IT戦記

    みなさんお元気ですか?僕は少しだけ元気ではありません。じんわりとした夏の暑さを感じながらブログを書いています。 実は、数ヶ月前にスマートニュースという会社を退職しました。 しばらく無職 しばらくは就職せずに無職でいようかなと思っています。 すぐに再就職した方がいいんだろうな〜。とは思うのですが少し疲れたかも。 いい時代になったものだ 最近は AI の進化も素晴らしく、昔ソフトウェアで出来なかったことがどんどんできるようになってるなって感じます。 Rust とか、ちょうど欲しかった感じのプログラミング言語もあるし、 ChatGPT は完璧ではないけど何か新しいことを始めるときに素晴らしい洞察を与えてくれる。 時代は確実に良くなってる。そんな時代に「自分は働いていないくていいのか」と少し不安になるけれど、自由気ままにコードを書く、そんな時間が今あってのもいいのかなって思ってます。 オフトピック

    IT戦記
    kishir
    kishir 2007/08/16
    amachang
  • 1