一番理解しやすいのは、CSV ですが、入力が4つあるとして、それぞれが a b c d という変数に入っているとします。 全部入力されているのなら、全てを連結するだけなので、 x = a; x += "," + b; x += "," + c; x += "," + d; なので、初回だけが特殊である事が解ります。ですから、通常は入力が 省略される場合があるので、以下のように書きます。
x = ""; // a に値がある場合 if ( a != "" ) { // 最初の入力なので x += a; } // b に値がある場合 if ( b != "" ) { // 前に入力が無い場合は最初の入力になります if ( x != "" ) { x += ","; } x += b; } // c に値がある場合 if ( c != "" ) { // 前に入力が無い場合は最初の入力になります if ( x != "" ) { x += ","; } x += c; } // d に値がある場合 if ( d != "" ) { // 前に入力が無い場合は最初の入力になります if ( x != "" ) { x += ","; } x += d; }
が一般的な書き方となります。 これは、どの入力が省略されても成り立つ方法です。 以下は、JavaScript の配列で整理したのです。
x = ""; var a = ["1","","","4"]; for( i = 0; i < a.length; i++ ) { if ( a[i] != "" ) { // 前に入力が無い場合は最初の入力になります if ( x != "" ) { x += ","; } x += a[i]; } }
この場合は、"," を使った CSV でしたが、" and " を使った SQL の条件用の文字列を作る場合も同様です。
|