タグ

2011年2月8日のブックマーク (5件)

  • XPath使いのための日本語チートシート

    XPath使いのための日語チートシート 第2版 XPathで楽してDOM操作したい!XMLを弄り倒したい!と思うけれども文法がよく分からんと。 これは困った。かといって英語のCheat Sheetsは一目で分かりづらい。 現在(2008年3月)、日語のチートシートはLinuxのコマンド集ぐらいしかない。 どうせなので日語のチートシートを作ってしまおうと。 チートシートは3枚組みで、 ・XPathチートシート ・XPath全関数一覧 ・Xpath for Javascript となっています 詳細な仕様は容赦なく削ったので、詳しく正確な情報を知りたければ参考資料を参照するのが一番よいと思われ。 製作には参考資料がとても役に立ちました。この場を借りて参考資料の作者に感謝の意を示します。 このチートシートを通してすばらしい技術が広がることを願っていたり。 なお、引用した部分の著作権は元の資

    sterope
    sterope 2011/02/08
  • Greasemonkeyスクリプト全体を無名関数で囲う意味 - prog*sig

    よくGreasemonkeyスクリプトを見ると全体を無名関数(匿名関数)で囲っているものを見ることがあると思います。 (function(){ // 処理内容 })(); 何でこのような記述をしているかというと、歴史を掘り返すのは面倒なので簡潔に 昔はトップレベルに宣言した変数が外部に影響を出してしまっていた? 今はevalInSandboxで実行されているので無名関数で囲わなくても問題はない。 (この(function(){)()}自体がどういう動作をするかはfunction についてを読むといい) Greasemonkey extension のコードから実行時のスコープを調べる « ku Greasemonkeyの小話 - FFFF - 0x つまり、今は囲まなくても問題はない。(ただしGreasemonkeyに限る) でも、実際のスクリプトでは囲んでいる場合が多いと思うので

  • JavaScript の無名関数に引数を与える

    1. 無名関数は名前がないだけの普通の関数 JavaScript で、最初に 「何だ?この書き方は。」 と思ったのが、無名関数を定義し、すぐにその関数を実行する記述。 無名関数と言えば、 JavaScript ではブロックスコープを実現するために用いられる。 cf. JavaScript のブロックスコープ - Java, Ruby との比較 2. 無名関数の定義 無名関数を定義し、すぐにその関数を呼び出すには、以下のように記述する。 (function(){alert("hoge")})() 無名関数の中で変数を定義すれば、その変数のスコープは関数の中に限定される。そのため、無名関数をブロックと見なすことができる。 上記の無名関数に、引数を与える。 (function(str){alert(str)})("hoge") 引数を二つ与える場合は、 (function(a,b){alert(

  • ユーザスクリプトを (function(){ ... })(); で囲むことについて - mallowlabsの備忘録

    末尾に追記アリ 自分の中では GreaseMoneky や Opera の User JavaScript を書くときに (function(){ // 処理を普通に書く })(); とクロージャで書いてスコープを切ることが常識だと思っていた。 野良スクリプトでこういう風に書いてないと「勉強不足なのねー」とか 思っちゃってたわけだけども、よく調べたみたら 自分が勉強不足だったことが判明したのでまとめてみる。 なぜ必要か(と思っていたか) ユーザスクリプト内でグローバル変数を書いた場合に 対象サイトのスクリプトのグローバル変数と衝突する可能性があるため。 例えば、対象サイトで config という変数を使っているときに ユーザスクリプトでそれを知らずに config という変数を宣言したりすると 意図しない動作をする場合がある。 というかそれでハマった↓ Googleにブログ検索とコード検索

    ユーザスクリプトを (function(){ ... })(); で囲むことについて - mallowlabsの備忘録
  • 2行でJavaScriptを高速化する方法 - rand's

    id:amachangさんの 一行で IE の JavaScript を高速化する方法 - IT戦記 に対して、id:uupaaさんが http://d.hatena.ne.jp/uupaa/20081230/1230604575 でIE以外でも使える色々な方法を提案なさっています。でも、 「正直documentを_docに置き換えるの面倒><」 そこで、たかがreplace(/document/g, '_doc')の手間を惜しむ皆様のために用意した、2行でJavaScriptを高速化する方法がこちら: script全体を(function(document){と})(document)で囲む これだね! ベンチマーク uupaaさんの記事にあるB系のソースを使わせていただきました。 ブラウザ B0 B1 B2 B3 B4 B5 b6 IE 6 10281 4938 10844 4672

    2行でJavaScriptを高速化する方法 - rand's