おもしろwebサービス開発日記

Ruby や Rails を中心に、web技術について書いています

javascript

Closure Compiler Compilation Levels

googleが出してるjavascriptの圧縮ツールClosure Compilerには WHITESPACE_ONLY SIMPLE_OPTIMIZATINS ADVANCED_OPTIMIZATIONS の三つのレベル設定があります。でもそれぞれどのような圧縮をしてくれるのかよくわかりませんね。そこで調べました。下記URLの意…

JavaScript: The Good Partsを読んでる

少しずつ(一日30分〜1時間くらい)読み進めています。JavaScript: The Good Parts ―「良いパーツ」によるベストプラクティスposted with amazlet at 09.01.20Douglas Crockford オライリージャパン 売り上げランキング: 6637Amazon.co.jp で詳細を見る今日は4…

JavaScriptでstrip

RubyのStringクラスには、文字列の左右の空白を除去するメソッドstripが存在します。でもJavaScriptにはありません。なのでJavaScriptで同じ機能を実装しようとしたのですが、最初はうまいやり方がわからず、下記のようにreplaceメソッドを二回使っていまし…

JavaScriptの正規表現関連メソッド

サイ本11章をざっくり読みました。流し読んだ感じでは、JavaScriptの正規表現はRubyやPerlとほぼ同じ仕様ですね。他言語との細かい違いはまた今度調べるとして、とりあえずJavaScriptの正規表現関連メソッドについてまとめたので載せときます。 基礎 正規表…

roppongi.js#4

roppongi.jsに参加するたびに、もっとjavascript勉強しなきゃなーという気持ちになります。勉強会の内容メモは後で書きます。(2008/07/03追記しました。)今回のroppongi.jsではeachメソッドについて勉強しました。 137:each 短いのでソースそのまま載せます…

サイ本15章まとめ

14章に引き続き15章途中までの自分用まとめをメモっておきます。サイ本14章まとめ - おもしろWEBサービス開発日記 DOM(Document Object Model) ドキュメントを構成するオブジェクトにアクセスする方法を定義したAPIのこと。W3Cからレベル1からレベル3まで…

サイ本14章まとめ

windowオブジェクトについて書かれている章です。内容の要約と気になったところのメモを書きます。 タイマー 下記4つのタイマー関連のグローバル関数について解説しています。名前みれば何となく用途がわかると思います。setTimeout()は指定された関数を、指…

JavaScriptでオペランドやオブジェクトを判別する方法

方法としては下記の三つがあるようです。 typeof演算子 instanceof演算子 constructorプロパティ それぞれ気になったところをメモっておきます。 typeof演算子 戻り値を調べてみた。 オペランド 戻り値 数値 number 文字列 string 論理値 boolean オブジェク…

ajax事始め

jQuery等のライブラリを使わずにajaxをするための方法についてメモ。 方法 XMLHttpRequestオブジェクトを使う scriptタグを作る サーバサイドと連携する 1は、同一出身ポリシーがあるので他ドメインのデータを取得したい場合は2か3の手段をとる必要がありま…

roppongi.js#3メモ

第三回roppongi.jsに参加しました。簡単に内容をメモっときます。 Roppongi.JS#3 jQuery Code Reading - 2008/06/17 - Roppongi.JS メモ 今日は87行目から開始。 90:size() size()でlengthを返すようにしてる。lengthにはDOMの数が入っている。 99:get() 引…

with文

Javascriptには、with文と呼ばれる、スコープチェーンを一時的的に変更する文があります。共通で使うオブジェクトを指定してあげると、そのオブジェクトを省略して書けるようになります。 with文の例 これが frames[1].document.forms[0].address.value = ""…

文字列に指定の文字列が含まれているか調べる関数

いつものようにメモ。 javascriptの場合 String.indexOf("hoge") 戻り値は一致した文字列の先頭の位置。一致するものがない場合は-1。 String.search(/hoge/) 引数がRegExpオブジェクトなだけで他はindexOfと同じ。 rubyの場合 String#index("hoge") 戻り値…

substrとsubstringの違い

よくこんがらがるのでメモっときます。 String.substring(from, to) fromからtoまでの部分文字列を返す String.substr(start, length) startからlengthの長さの部分文字列を返す substrの方は、ECMAScriptで標準化されておらず非推奨だそう。substringだけ使…

関数のスコープとクロージャについてまとめ

こないだ関数を勉強したときに飛ばしたクロージャについて調べたのでメモ。 覚えるのがめんどいのであとまわし。 javascriptの基礎その2(関数について) - おもしろWEBサービス開発日記 クロージャの定義 wikipediaにはこんな風に書いてあった。 クロージ…

prototypeと継承

ようやくprototypeベースの考え方がわかった気がします。でもなんでこんなにややこしい仕様なんだろ。

javascriptの基礎その2(関数について)

今日は関数について。サイ本8章を読んで気になったところのメモです。 関数の引数 引数は省略できるが、省略した分の引数には未定義値が設定される。定義したよりも多くの引数を渡したときは、多い分は無視される。(でも後述するArgumetsオブジェクトを使え…

javascriptの基礎をお勉強

最近まで、あまり勉強せずにjavascriptを書いていたのですが、そろそろ基礎から勉強しないと効率が悪いように思えてきました。 というわけで勉強したことをメモ。 論理式 if文では、falseだけでなく0, NaN(Not a Number), null の時がfalseになり、それ以外…

javascriptのシンタックスエラーを自動検出できるようにした

spidermonkeyとflymakeとjavascript.elがあれば、emacsでシンタックスエラー自動検出ができるそうです。flymakeとjavascript.elは導入済みなので、残るはspidermonkeyだけインストールすればOK。 ちなみにspidermonkeyはjavascriptのインタラクティブシェル…

if文の分岐条件それぞれ

自分の前書いていたブログから転載。if文内においてfalse以外で偽となる条件を書いています。 rubyに慣れてしまうとperlとphpの"0"は違和感あるなあ。 maeshima blog » if文の分岐条件それぞれ ruby nil perl 0 “0″ undef “”(空文字列) php 0 ”0″ null “”(空…

jquery事始め

下記の記事のサンプルを写経してみました。だいたい概要はわかったので後は覚えたことを使って何か作ってみたいところ。第3回以降もすでにアップされているのでそれをやるという方法もあるけど、写経するより自分であれこれいじった方が早く覚えると思うので…

javascriptの初歩

javascriptはまだまだ素人同然ですが、とりあえず今日勉強したことを書いときます。 javascriptでページを開くには 別ウィンドウで、あるページを開くときはwindowオブジェクトのopen()メソッドを使う。 window.open("http://level20.jp/); 同じウィンドウで…

jQuery Code Readingに参加

javascriptはまだいまいちわかっていないのですが、とりあえず参加してみました。 3/15(sat) - Roppongi.JS#1 jQuery Code Reading(1)のお知らせ - devlog.holy-grail.jp最初の方はなんとかついていけたつもりなのですが、pushStackメソッドなどの各種メソッ…

prototypeがよくわからない件

ここ3日くらい、この本を読んでJavaScriptの基礎を学んでいました。JavaScriptプログラミング入門 第2版作者: 大津真出版社/メーカー: オーム社発売日: 2006/09/23メディア: 大型本購入: 1人 クリック: 75回この商品を含むブログ (20件) を見るだいたい一通…