Я нахожусь на FreeCodeCamp и мне нужно создать игру в стиле "Mad Libs" (назовем ее "Word Blanks". Мне нужно создать предложение в стиле "Fill in the Blanks".
В игре "Mad Libs" вам предлагаются предложения с пропущенными словами, такими как существительные, глаголы, прилагательные и наречия. Затем вы заполняете недостающие фрагменты словами по вашему выбору так, чтобы законченное предложение имело смысл.
Подумайте над этим предложением - «Это было действительно ____, а мы ____ сами ____». В этом предложении три пропущенных фрагмента - прилагательное, глагол и наречие, и мы можем добавить слова по своему выбору, чтобы завершить его. Затем мы можем назначить законченное предложение переменной следующим образом:
var предложение = "Это было действительно" + "горячо" + ", и мы" + "смеялись" + "мы сами" + "глупо";
Учитывая приведенные выше инструкции, мне предоставили существительное, глагол, прилагательное и наречие. Мне нужно составить законченное предложение, используя слова по своему выбору, а также слова, которые мне предоставили.
Мне потребуется использовать оператор конкатенации строк + для построения новой строки, используя предоставленные переменные: myNoun, myAdjective, myVerb и myAdverb. Затем я назначу сформированную строку переменной результата.
Мне также нужно будет учитывать пробелы в моей строке, чтобы в последнем предложении были пробелы между всеми словами. Результатом должно быть законченное предложение.
Теперь я написал следующий код для выполнения упражнения выше:
function wordBlanks(myNoun, myAdjective, myVerb, myAdverb) {
var myNoun = "___";
var myAdjective = "___";
var myVerb = "___";
var myAdverb = "___";
var result = "my " + myAdjective + myNoun + "loves to " + myVerb + "very "
+ myAdverb;
return result;
}
wordBlanks("dog", "big", "ran", "quickly");
wordBlanks ();
Но я получаю следующие ошибки при запуске теста:
// запуск тестов wordBlanks ("собака", "большой", "бег", "быстро") должен
содержит все переданные в словах, разделенных не-словами
(и любые дополнительные слова в вашем madlib) . wordBlanks ("кот", "маленький",
«хит», «медленно») должен содержать все пропущенные в словах разделенные
несловесными символами (и любыми дополнительными словами в вашем madlib). //
испытания завершены
Что "все переданные в словах, разделенные несловесными символами (и любые дополнительные слова в вашем madlib)" должны быть здесь?
EDIT
Я изменил код в соответствии со следующим и теперь работает . Тест не удался, потому что слова, содержащиеся в переменных, пришлось заменить другими, а также потому, что в результате var в функции отсутствовали дополнительные слова и пробелы --->
function wordBlanks(myNoun, myAdjective, myVerb, myAdverb) {
// Your code below this line
var result = "I have a " + myAdjective + " bed and the " + myNoun + " always " + myVerb + " very " + myAdverb;
// Your code above this line
return result;
}
// Change the words here to test your function
wordBlanks("cat", "little", "hit", "slowly");
Таким образом, отсутствующими "несловесными" символами были пробелы и дополнительные части предложения (я добавил следующее, наряду с предоставленными словами: "У меня есть", "кровать и", "всегда" и "очень").