このJavaScriptコードを使用して、検索基準を含むオブジェクトの配列に項目を追加しています。JavaScriptのインライン文字列連結で/ Elseが予期しない値を返す場合
私の目標は、検索条件が日付範囲の開始の場合は「T00:00:00」を使用し、日付範囲の終了の場合は「T23:59:59」を使用することです。
//key = "Created",
//value = "2016-11-23",
//to_from = "from"
collectedValues.push({
key: key,
value: (value +
(to_from === "to") ?
"T23:59:59" : // when searching by date range,
"T00:00:00"), // "from" must be 00:00 and
// "to" must be 23:59
isPartialMatch: false,
toFrom: to_from
});
結果として得られるオブジェクトの配列の項目の「値」プロパティの値が正しくありません。これは、 "2016-11-23T23:59:59"のように連結されることになっています。
代わりに、値は "23:59:59"です。
これは複数行にコードのフォーマットと分割とは何かを持っているように見えます。
もちろん、完全なif/else表記を使用できますが、なぜこの記法は機能しませんか?
' +をあなたのデータを内破あり'?'より高い優先順位です。あなたはあなたがあなたと思っていることをやっていません。あなたのコードは実質的に '(value +(to_from ==="〜 "))ですか? "T23:59:59": "T00:00:00" ' – Phylogenesis
あなたの' value'変数にはデータがありますか? – VadimB
(value +(to_from === "to")? "T23:59:59": "T00:00:00"))を試し、 'value'が空でないことを確認してください – Weedoze