- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在 coderbyte 中进行字母更改挑战,但我很困惑为什么我的代码不起作用。
Have the function LetterChanges(str) take the str parameter being passed and modify it using the following algorithm.
Replace every letter in the string with the letter following it in the alphabet (ie. c becomes d, z becomes a).
Then capitalize every vowel in this new string (a, e, i, o, u) and finally return this modified string.
在最后一个 else 语句中,我想将不是字母的任何字符添加到“newWord”中。 When i pass the word "hello 3"I should be getting "ifmmp 3"instead I get "hhhhhhhihhhhhhhhhhhhhhhhhhheeeefeeeeeeeeeeeeeeeeeeeeeelllllllllllmllllllllllllllllllllllllllmllllllllllllllloooooooooooooopoooooooooooo 333333333333333333333333333undefined....."If i take that else statement out, I just get "ifmmp"without the 3. Im having trouble理解 else 语句为何/如何搞乱它,我该如何解决这个问题?我是编码新手,因此任何帮助都会很棒。
function LetterChanges(str) {
var newWord = "";
var alphabet = "abcdefghijklmnopqrstuvwxyz";
for(var i = 0; i <= str.length; i++){
if( str[i] === "z"){
newWord += alphabet.charAt(0);
} else if(str[i] === " "){
newWord +=" ";
}
for (var j = 0; j <= alphabet.length; j++){
if(str[i] == alphabet.charAt(j)){
newWord += alphabet.charAt(j+1);
}
// this one -------------------> else {
newWord = newWord + str[i];
}
}
}
return newWord;
}
最佳答案
试试这个:
function LetterChanges(str) {
var newWord = "";
var alphabet = "abcdefghijklmnopqrstuvwxyz";
for(var i = 0; i < str.length; i++){
for (var j = 0; j < alphabet.length; j++){
if(str[i] === alphabet.charAt(j)){
if( str[i] === "z"){
newWord += alphabet.charAt(0);
}
else {
newWord += alphabet.charAt(j+1);
}
}
else if (alphabet.indexOf(str[i]) === -1){
newWord += str[i];
break;
}
}
}
return newWord;
}
以下是更有效的解决方案
function LetterChanges(str) {
var newWord = "";
var alphabet = "abcdefghijklmnopqrstuvwxyz";
for(var i = 0; i < str.length; i++){
// if it's a 'z' do not loop through alphabet string and jump straight to the next character.
if( str[i] === "z"){
newWord += alphabet.charAt(0);
continue;
}
for (var j = 0; j < alphabet.length; j++){
// if they match perform replacement
if(str[i] === alphabet.charAt(j)){
newWord += alphabet.charAt(j+1);
break;
}
// if the current char is not contained on the alphabet string (spaces, numbers and so on...) ---> copy it as it is
else if (alphabet.indexOf(str[i]) === -1){
newWord += str[i];
break;
}
// if the current char is contained in the alphabet string but does not match ---> do nothing
}
}
return newWord;
}
关于javascript - Coderbyte 字母更改挑战 - else 语句错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36975703/
问题是: 使用 JavaScript,让函数 LetterChanges(str) 获取传递的 str 参数,并使用以下算法对其进行修改。将字符串中的每个字母替换为字母表中紧随其后的字母(即,c 变为
我是 JS 的新手,正在试用 CoderByte。下面的问题我一直在兜圈子想弄明白。我被困在如何获得第三大词上。预先感谢您的指导。 来自 CoderByte 的问题 使用 JavaScript 语言,
我正在编写一个接受字符串“str”的函数,并检查该字符串是否每个字母都被 +(添加)符号包围。如果字符串中的每个字母确实都被 +s 包围,如 +b+,则它必须返回 true,否则返回 false。
我正在 coderbyte 上尝试一些编程挑战,并在我自己的 IDE 中编程,因为它更容易,但我不知道为什么它提供的代码甚至可以编译。 import java.util.*; import java.
我试图理解 Array Addition CoderByte 问题的解决方案中的逻辑。这是问题提示——“使用 JavaScript 语言,让函数 ArrayAdditionI(arr) 获取存储在 a
我看过其他答案,但我正在尝试通过回调来制作自己的答案。 “使用 JavaScript 语言,让函数 MultiplicativePersistence(num) 获取传递的 num 参数,该参数始终为
谁能像一个6岁的 child 一样向我解释一下解决方案?我无法理解这些解决方案。也许有一些代码注释? 谢谢。 我在 coderbyte 上花了 2 个小时试图解决这个问题。问题如下: Have the
在应对一些 Coderbyte 挑战时,我能够递归地解决以下问题,但希望得到一些关于如何改进它的反馈。 Have the function AdditivePersistence(num) take
就 coderbyte 而言,这是我的功能代码。但我觉得它不应该这么复杂。我错过了一个简单的技巧吗? function ArithGeo(arr) { var array_type = -1;
我正在尝试回答这个问题: 使用 JavaScript 语言,让函数 SimpleSymbols(str) 接受传递的 str 参数,并通过返回字符串 true 或 false 来确定它是否是可接受的序
我已经处理这个问题好几个小时了,我已经尽我所能,尽我目前的新手 javaScript 能力来解决这个挑战,但我就是无法弄清楚到底出了什么问题。我不断收到“UNEXPECTED TOKEN ILLEGA
我正在 Coderbyte 上进行挑战,如果您对我的问题提出任何建议,我将不胜感激: 给我的挑战:“使用 JavaScript 语言,具有函数 ArrayAdditionI(arr)获取存储在 arr
我正在 coderbyte 中进行字母更改挑战,但我很困惑为什么我的代码不起作用。 Have the function LetterChanges(str) take the str paramete
您好,到目前为止,我还没有找到任何可以解决我遇到的问题的内容。在本练习中,唯一应该更改的是字母字符。然而,在测试用例中,它包含数字和特殊字符,这些字符也会被更改,但它们不应该被更改。 我有以下代码:
在我的 Xcode Playground 上,以下代码片段会修剪任何 String 中的空格(如我所愿)。 let trimmed = " hello ".trimmingCharacters
我正在 Coderbyte 上进行挑战,如果您对我的问题提出任何建议,我将不胜感激: 我知道有一个更简单的方法来解决这个问题(我后来发现了): function TimeConvert(num) {
我一直在 Coderbyte.com 上进行“简单”编程挑战 ( full link here ) coderbyte.com 提供的模板始终如下所示: function DivisionString
非常菜鸟,希望这个问题不是愚蠢至极。 我一直在解决 Coderbyte 上的 Javascript 问题,并且一直坚持下面的字母计数练习: http://www.coderbyte.com/Codin
我在 Coderbyte 的挑战中遇到问题 使用 JavaScript 语言,让函数 LetterChanges(str) 获取正在传递的 str 参数,并使用以下算法对其进行修改。将字符串中的每个字
我是 JavaScript 新手,不确定我的代码为何无法运行。如果 x 和 o 的数量相等,我将尝试返回 true,否则返回 false。我的代码适用于除“x”和“o”之外的所有输入。感谢您的帮助!
我是一名优秀的程序员,十分优秀!