単一の文字列でフォーマットする必要があるユーザーのアドレスの一部を見てみましょう。
住所コンポーネントは
Street
City
Phone
State
Zip
string にフォーマットする必要がありますstreet city, phone, state zip
。(2 つのコンマ)。
問題は、すべてのフィールドが になる可能性があることnull
です。したがって、 の場合street == null
、city == null
文字列phone, state zip
(1 つのコンマ) が必要です。問題は、スペースの数とコンマの数を制御する
ことです。null 検査の数を回避して最小限に抑えるにはどうすればよいですか?
私の現在のコードは
var formatAddress = function(address) {
var retVal = ""
if (address.street || address.city)
{
retVal += address.street ? address.street + " " : ""
retVal += address.city ? address.city : ""
retVal += ", ";
}
retVal += address.phone ? address.phone + ", " : ""
retVal += address.state ? address.state : ""
retVal += address.zip ? " " + address.zip : ""
return retVal
}