我将使用JavaScript制作一个游戏,让用户选择给定的字符并组成一个有效的英语单词。现在问题是如何在JavaScript中检查用户输入的是否是有效的英语单词,例如,我给用户以下字母:
- O
- D
- O
- G
现在他可以从这些字符中组成三个单词:God、Good或Dog。
提前致谢。
编辑
这个怎么样?
这样做是好的方式还是不好的方式?现在他可以从这些字符中组成三个单词:God、Good或Dog。
提前致谢。
编辑
这个怎么样?
这样做是好的方式还是不好的方式?DO
和GO
。您需要使用允许单词的字典,并根据该字典检查答案。var allowedWords = ['god','good','dog','do','go'];
var enteredWord = 'GOD';
if(allowedWords.indexOf(enteredWord.toLowerCase()) >= 0) {
// match
}
do
视为有效的或任何合法的内容,那么怎么办呢?在这种情况下,我必须制作自己的字典。 - undefined这里有一个英文单词MySql数据库。
http://androidtech.com/html/wordnet-mysql-20.php现在你需要实现服务器端功能。当单词不存在时将返回true或false。您可以使用Jquery调用Ajax服务并检查游戏中的单词。
var gameDict = [
{ 'letters':['o','d','o','g'], 'words':['god','good','dog','do','go', 'goo']},
{ 'letters':['a','e','p'], 'words':['ape']},
{ 'letters':['p','n','e','t'], 'words':['pen', 'ten', 'net']}
]
// Returns `true` if the answer is valid, `false` if it's not.
function validateAnswer(questionNumber, answer){
return gameDict[questionNumber].words.indexOf(answer.toLowerCase()) >= 0;
}
console.log(validateAnswer(0,'Good'));
// true
console.log(validateAnswer(1,'ap'));
// false
是的,您将不得不为您的游戏手动编写字典,因为除了检查单词是否真的是英语单词之外,您还必须检查您的字符是否能够组成该单词。