我正在構建一個基本上由幾個選擇,幾個複選框和一個輸入文本字段組成的Web應用程序。每個選擇包含4個以上的選項。用戶選擇他們的選項後,填寫文本輸入,檢查任何可能的複選框,然後按提交,在textarea中生成模板文本。生成的文本基本上是一個使用用戶指定的所有選項的模板。在一個簡單的形式,它可以去是這樣的:從JavaScript中的用戶輸入生成複雜的文本模板
- 用戶選擇「藍色」和「你好」,從選擇,不檢查任何複選框,並在輸入文本字段中寫道:「約翰」。
- ,其隨後產生的文字是:
Hello, John, you have a blue car.
現在,上面的例子是約100倍比我生成的文本是實際想那麼複雜。問題來了:編碼的最佳方法是什麼?目前,我選擇了帶有大量靜態文本和大量IF語句的醜陋嵌套開關語句。儘管如此,如果我增加更多的複雜性,我會遇到擴展當前開關語句的限制,並且也希望避免創建另一個開關語句級別。
是最好的方式來生成文本的所有可能的變化(我猜測至少有一個200-250,並簡單地通過一個單一的switch語句返回一個選定的模板(然而,這使得應用更改一個單詞/句子/等一個噩夢)?或者我應該抽象所有的選擇,並用變量創建最終的文本(例如使用上面的例子:$ greeting,$ name,$ middle $ color $ object。)?什麼是用於生成文本的最佳做法?
這是不特定於JavaScript,但就是我使用什麼如何做到這一點的JS所以建議將受到歡迎。感謝您的幫助!
感謝您的建議。我最終使用了JSON。 – mart1n