手取り16万円の貧乏プログラマーの僕が、7日間で月収60万円になった方法

価値ナシ貧乏プログラマーの僕が、
フリーランスプログラマーになったら月収が3倍になりました。

詳しくはこちら

【JavaScript】!!(ビックリマーク2つ)って何?

プログラミング

どうも、コウイチです。

最近他の人のJavaScriptのソースを眺めていたら、こんなのを発見しました。

↑これ

ビックリマーク2つ(!!)を使ってます。

あんまり見かけない珍しい書き方だったので、

ちょっと調べてみました。

ビックリマーク1つ(!)否定の論理演算子

まず、ビックリマーク1つ(!)は、否定の論理演算子です。

実行結果:falseです。

ビックリマーク2つ(!!)二重否定の論理演算子

ビックリマーク2つ(!!)は、二重否定の論理演算子です。

実行結果:trueです。

二重に否定するので、trueがfalseになり、そのfalseがtrueに戻ります。

なら何の意味があるのか?と思いますよね。

!!を使うわけ

では、こんな例はどうでしょうか。

未定義の変数はundefined(未定義)が返り、それはfalse扱いなので、上のコードで問題は起きません。

(var aaa;を入れないとエラーになりました。)

 

しかし、undefined(未定義)というキーワードに未対応の古いブラウザが存在するみたいです。(;゚Д゚)

古い環境では、undefined(未定義)というキーワードが存在せず、未定義の変数がifの条件式の中でboolean型に変換されないため、if文がエラーになってしまう可能性があるのですね。

 

if(○○○)の中身はboolean型(trueかfalse)にならなければなりません。

 

そこで、変数が未定義でも、if文の条件式の中をboolean型にする必要があります。

 

否定演算子(!)は、対象のオブジェクトの否定をboolean型で返す性質があるので、

一旦否定演算子(!)でaaaを逆の真偽値としてboolean型に変換し、もう一度(!)を使って元の真偽値(boolean型)に戻します。

 

これによって、未定義の変数もif文の条件式の中でboolean型になるため、正しく判定ができます。

最後に

自分じゃ全く使わない書き方だったので、
戸惑いました(汗

他人のコードを見るときなんか、結構出てくるので、是非覚えておきましょう。

ありがとうございました。

スキルに自信がない20代でも、フリーランスになって月50万以上を稼げます。

最後に僕の実体験から、プログラマーが最も簡単に収入を上げる方法をお伝えします。

それは、フリーランスになることです。

 

エンジニアだったら誰でもフリーランスになれます。

業務経験が1年もあれば、月収50万が狙えます。

 

信じられないかもしれませんが、

フリーランスというのは稼げる働き方なのです。

 

僕は正社員でプログラマーをしていたのですが、

・終電帰りが当たり前
・上司に毎日怒鳴られる。
・手取り16万

という地獄のような環境が耐えられなくなり、

フリーランスになったら月収がいきなり60万になりました。

 

正直僕なんか、大したスキルはありません。

いつも下っ端の下請けプログラマーでした。

 

なのに収入は3倍になりました。

自信と健康とお金を手に入れることができました。

 

いつまでたっても上がらない正社員の給料にイライラしている方は、

是非フリーランスにチャレンジしてください。

 

プログラマーが最速で月収を上げる方法です。

 

・フリーランスなんて不安定じゃん。仕事見つからなかったらどうするの?

・仕事探しがだるい。

・転職活動なんかする暇ないんだよ

・俺のスキルじゃ無理なんだよ

 

僕もそう思ってビビってました。

ですが、思った以上に簡単でした。

 

思い込みというのは本当に恐ろしいです。

やれば行ける世界です。

 

そんな僕がフリーランスになって、

3年間働いても上がらなかった給料を、

一瞬で3倍に上げた方法を、以下の記事で書いています。


【月収20万円⇒月収60万円】価値ナシ貧乏プログラマーの僕が、7日間で収入が3倍になった物語

プログラミング
衣食住よりプログラミング

コメント