勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

JavaScriptで三項演算子の中に三項演算子

   2014/05/22  JavaScript

既存のソースを作り変えている際によく分からないソースがあった。

だいぶ書き換えてあるけど下記のような形。

var code1 = '02';
var code2 = 'c2d';
var i = 2;
var test = (code1 + "," + code2).indexOf( i < 10 ? "0" + i : i ) > - 1 ? 'ok' : 'ng';
console.log(test); //ok

・三項演算子の中に三項演算子を入れられること
・そもそも三項演算子の頭の部分はカッコがなくてもいいこと

どっちも知らなかった。明らかに見づらいので書くことは無いけど、
知識として覚えておく。

あと、PHPでもできるみたい。
http://php.net/manual/ja/language.operators.comparison.php

 - JavaScript

  関連記事

JavaScriptでブラウザ幅によって異なる処理を行う方法(matchMedia)
JavaScriptでブラウザ幅によって異なる処理を行う方法(matchMedia)

JavaScriptでブラウザ幅によって異なる処理を行う場合、「window.a ...

バニラJS対応(jQuery非依存)の通知(トースト)系ライブラリ「Notyf」の利用方法
バニラJS対応(jQuery非依存)の通知(トースト)系ライブラリ「Notyf」の利用方法

以前に通知(トースト)系ライブラリ「Toastr」の利用方法をメモしたが、こちら ...

Leafletでマーカーをグループ化し、チェックボックスの状態により表示非表示を切り替える方法
Leafletでマーカーをグループ化し、チェックボックスの状態により表示非表示を切り替える方法

LeafletとOpenStreetMapでマップ上にマーカーを複数設置した上で ...

Dexie.jsを利用してIndexedDBを取り扱う方法
Dexie.jsを利用してIndexedDBを取り扱う方法

IndexedDBを用いて色々するという案件を見かけたが、そもそもIndexed ...

JavaScriptにてHTML文字列をDOMノードに変換する方法
JavaScriptにてHTML文字列をDOMノードに変換する方法

先日jQueryにて$.parseHTML()を用いてHTML文字列をDOMノー ...