var sentence = prompt('Enter Sentence Here: ')
if(sentence === 'Billy'){
console.log('Great!');
}
Мне было интересно, есть ли способ вернуть "Отлично!". если предложение не просто "Билли". Например, как вы могли бы вернуть "Отлично!", если бы предложение было "Мое имя Билли", поэтому то, что я прошу, - это как заставить оператор if отсканировать предложение и определить, присутствует ли это слово, а затем вернуть то, что я желаю.
Мои извинения за простоту и глупость, это мой первый день обучения JS.
Вы должны использовать регулярные выражения, ища Билли:
/billy/i.test("I am Billy")
Используйте indexOf
следующим образом:
if (sentence.toLowerCase().indexOf("billy") !== -1) {
Все нижние регистры являются дополнительным ослаблением состояния.
Это ваш полный код:
var sentence;
sentence = prompt("Enter Sentence Here: ");
if (sentence.toLowerCase().indexOf("billy") !== -1)
{
console.log("Great!");
}
Вы можете использовать .includes
или .indexOf
которые сканируют строку подстроки.
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/String/includes
включает в себя взятие строки для поиска и возвращает true, если она находит ее, в противном случае - false.
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/String/indexOf
indexOf берет строку для поиска и, если она ее находит, вернет начальный индекс этой строки, поэтому 'hello'.indexOf('ello') => 1
Если он не находит его, он возвращает -1;
.включает в себя
var sentence = prompt('Enter Sentence Here: ');
if (sentence.includes('Billy')) {
console.log('Great!');
}
.индекс
var sentence = prompt('Enter Sentence Here: ');
if (sentence.indexOf('Billy') > -1) {
console.log('Great!');
}
Следует отметить, что это чувствительно к регистру, поэтому убедитесь, что вы печатаете "Билли". Вы можете использовать toLowerCase
и также искать billy
, и таким образом это будет нечувствительным к регистру.
<script>
if(prompt('Enter Sentence Here: ').toLowerCase().indexOf("billy") >= 0)
{
console.log('Great!');
}
</script>
/billy/i.test("I am Billy");
"I am Billy".toLowerCase().includes("billy");
"I am Billy".toLowerCase().contains("billy");
"I am Billy".toLowerCase().indexOf("billy") !== -1;
вы можете использовать indexOf
var sentence = prompt('Enter Sentence Here: ');//"My name is Billy"
if(sentence.indexOf("Billy") !== -1){
console.log('Great!');
}
Если вы хотите нечувствительность к регистру, вы можете использовать toLower() в строке, а затем искать "billy"
if(sentence.toLowerCase().indexOf("billy") !== -1){
console.log('Great!');
}
Использование regex также является одним из хороших вариантов.
if(/billy/i.test(sentence)){
console.log('Great!');
}
Спасибо за прочтение,
Вы также можете использовать такие функции, как:
if( sentence.includes('Billy') )
Проверить поддержку браузера