UNO[ENGINEER]アパレル業界からやってきたTweetこんにちは!エンジニアの宇野です。scriptだけではコンピューターに読み込んでもらえないため、javascriptにコンパイル(変換)します。JavaScriptに比べ少ない記述ができる(約3分の1になるらしい。)JavaScriptをRubyライクに記述できる言語ブラウザ用の開発にもサーバサイドの開発にも使えるとにかく少ないタイピングでjavascriptを吐き出してくれる便利な言語!JavaScriptとの違いどれだけ記述を省略できるのか、JavaScriptと比べながら構文を見ていきましょう!var宣言・セミコロンは不要コンパイル時に自動で付与してくれます。'hoge';関数やメソッドでの()は不要ただし、括弧が二重になったり、複雑に重なる場合は付与しておいた方が安全です。script!');{}(波括弧)はインデントによって表現こちらもコンパイル時に自動で付与してくれます。}コメントアウト1行の場合はコンパイル時に消えますが、複数行の時はコメントアウトとして残ります。*/文字列についてJavaScriptシングルクォート、ダブルクォートで囲います。ダブルクォートでは便利な使い方があります。#{変数名}をダブルクォート内に組み込むと文字列内で変数を使うことができます。falseになります。内容によって使い分けると読み返した時にわかりやすくなります。-2));生成記法1行でまとめても、複数で書いても同じようにコンパイルされます。複数で書くときは,(コンマ)を省略することができます。数値の間のピリオド(範囲演算子「..」)の数によって範囲が変わります。[以上...未満]また、配列中の要素を指定することができます。その時の数値は配列の順番(インデックス番号)を表し、コンパイルするとsliceメソッドを使用し表されているのがわかります。内部ではsliceメソッドが使用されているので、「最後から○番目」というマイナス記号も使うことができます。オブジェクトの生成について配列の生成記法と同じような形で書くことができます。この時{}(波括弧)は省略した形で書くことができます。'Hello'};インデントによってネストしていけます。else』を用いて1行で記述することができます。この書き方の時は、三項演算子を使用することはできません。CoffeeScriptの省略規則に則って書く以外はJavaScriptと同じように書くこともできますので内容によって書き換えて使用すると良いと思います。}ここでifの後に「is」が出てきます。これはCoffeeScriptならではの表現で、JavaScriptでいう「===」と同義です。if文で多用される比較演算子について説明します。比較演算子についてJavaScriptでは、「==」が使えていましたが、CoffeeScriptでコンパイルすると、全て「===」に変換されます。指定の値がtrueかfalseかを判定します。alert('初級者');}複数の値を入れられるので同じ結果を求める際にわかりやすく書けます。break文の記述を入れなくて良いので書き忘れによる不具合が出ません。反復処理(for文)指定回数を回したい場合や、配列から順に値を取り出す場合は「for...in」を使用します。alert(number);}numberは仮変数です、これを配列要素にアクセスできます。until文)条件式がtrueの間ずっと処理を繰り返すにはwhile文、条件式がtrueになるまで処理を繰り返すにはuntil文を利用します。until命令は、CoffeeScript特有の文です。条件式に否定が含まれる場合は、until命令を使用することで、コードがよりわかりやすくなります。"!");};greetingA(name);呼び出しの時に気をつけるのは、呼び出し時の記述です。引数がある場合は()括弧がなくても認識してくれますが、引数ない場合は()括弧もしくは関数名の前に「do」をつけないと認識してくれません。JavaScriptとは逆で、戻り値は必要ない場合に「return」を書きます。匿名関数(無名関数)変数名がないだけで、通常の関数と同じ様に記述できます。alert("hello");})();ここでも無名関数の即時実行に「do」が使えます。Co.,Ltd.MEMBERABOUTCONTACT。