タグ

ブックマーク / qiita.com/raccy (4)

  • JavaScriptに無名関数というものも即時関数というものも構文としては存在しない - Qiita

    【2019年3月26日追記】 いつからは不明ですが、元ネタのTecaAcademyマガジンの記事が大きく修正されていました。ですので、下記内容の一部は現在の記事内容にあっていません。古い記事はWebArhiveあたりを探ってください。 無名関数とは<おまけで即時関数も>という記事を読んでいると所々引用文になっていた。引用元はどこなのかと探してみたところ、次の記事を見つけた。 JavaScriptで即時関数を使う方法【初心者向け】 | TechAcademyマガジン ちょっと酷い内容なので、突っ込んでいこうと思う。 なお、記事に合わせてES5レベルでの解釈をしているが、仕様書等は面倒だったのでES2018を参照している。 即時関数 ⊂ 無名関数 ? 即時関数は、無名関数と呼ばれる関数の一種です。 この一文だけで「やばい」と思った人はJavaScriptを語る資格があるから、安心してくれ。「そ

    JavaScriptに無名関数というものも即時関数というものも構文としては存在しない - Qiita
    nibushibu
    nibushibu 2018/07/23
  • CoffeeScript 2という新たなる希望 - Qiita

    CoffeeScriptは滅びぬ!何度でも蘇るさ! CoffeeScriptがいかに駄目かを理解している皆さんならご存じの通り、これまでのCoffeeScriptには重大な欠点があった。それは「CoffeeScriptはECMAScript5(ES5)のaltJSである」と言うことだ。ES5以前のJavaScriptが駄目すぎるため、そこがCoffeeScriptの限界になってしまっていた。駄目な奴は何をやっても駄目なのだ。 ECMAScript2015以降(ES2015+)において、JavaScriptは目覚ましい発展を遂げた。ジェネレーター、テンプレートリテラル、class構文、モジュールベース、async/await等多くの機能が追加された。いくつかの機能は既にCoffeeScriptに存在していたものであったが、ジェネレーターのような全く無い物は新たに追加する必要があった。しかし、

    CoffeeScript 2という新たなる希望 - Qiita
  • 三項演算子?:は悪である。 - Qiita

    三項演算子?:は悪である。異論は認める。1 三項演算子とは何か? 悪である三項演算子(ternary operator)は?:というものだけである。それは次のようなものである。 条件演算子(conditional operator)とも言われる。他にもinline if (iif)、ternary ifという呼び方がある。 多くのプログラミング言語において?:が唯一の三項演算子である。三項演算子?:が存在するプログラミング言語において、他の三項演算子が存在するような言語を私は知らない。「三項演算子」という言葉が参照透過性(referential transparency)2を有することを私は信じている。 ?:という二項演算子もあるが、ここでは別物として扱う。3 ifを用いている、?だけの演算子である、といった場合はここでは含めていない。 三項演算子は式a、b、cに対して、a ? b : c

    三項演算子?:は悪である。 - Qiita
    nibushibu
    nibushibu 2017/10/11
  • JavaScript初級者のためのコーディングガイド - Qiita

    JavaScriptは大変難しい言語です。Rubyの難易度を2、Cの難易度を5、C++の難易度を8にすると、JavaScriptの難易度は12ぐらいあると思います。このコーディングガイドはそんなJavaScriptの深みに嵌まらないようにするためのJavaScriptの書き方を規定したものです。初級者1のための物ですので、わかってやっている人に好きにやってください。 このコーディングガイドは絶対に従わなければならないものではありません。私は一切強制はしませんし、初級者が従わなければならないという義務もありません。採用するしないはみなさんの自由です。 禁止編 JavaScriptには安易に使用してはいけない機能があります。下記の機能は、それぞれの機能を使っても良い、または、使うべきであるという理由を説明できない限り、使用してはいけません。 ==、!= ==と!=を使用してはいけません。代わり

    JavaScript初級者のためのコーディングガイド - Qiita
    nibushibu
    nibushibu 2017/01/03
  • 1