使用 if 和 else 以及 charAt 循环数组
Looping an array with if and else as well as charAt
我是 Javascript 的新手,我有一些 C 语言方面的经验,但我不知道自己做错了什么。到目前为止 Javascript 真的很令人困惑,我不明白它,因为 C 是我除了 HTML 和 CSS 之外唯一知道的编程语言,我尝试了这两个代码但是 none其中有工作。
我正在尝试对 charAt 使用 for 循环和 if else 语句。目标是查看名称数组中的第一个字符,如果该字符是 'j' 或 'J',则打印出“Goodbye”+ name,如果不是,则打印出“Hello”+ name。我需要转换成 ASCII 码吗?任何见解或建议都会非常感谢。这是我在下面尝试过的。
var names = ["Yaakov", "John", "Jen", "Jason", "Paul", "Frank", "Larry", "Paula", "Laura", "Jim"];
for (var i = 0; i < names.length; i++) {
if (names[i].charAt(0) == 'j' || 'J') {
console.log("Goodbye " + names[i]);
} else(names[i].charAt(0) !== 'j' || 'J']) {
console.log("Hello " + names[i]);
}
}
var names = ["Yaakov", "John", "Jen", "Jason", "Paul", "Frank", "Larry", "Paula", "Laura", "Jim"];
var myFunc = function(letter) {
for (var i = 0; i < letter.length; i++) {
if (letter[i].charAt(0) == 'j' || 'J') {
console.log("Goodbye " + letter[i]);
}
if (letter[i].charAt(0) !== 'j' || 'J') {
console.log("Hello " + letter[i]);
}
}
}
myFunc(names);
你应该检查 if (names[i].charAt(0) == 'j' || names[i].charAt(0) == 'J')
一个else
子句不带条件,所以应该是:
else {
// code here
}
如果您需要检查初始条件 if
之外的条件,您应该使用 :
else if (condition) {
// code here
}
第一个问题是:
if(letter[i].charAt(0)=='j' || 'J'){}
在谈论 js 时,它就像 C 中的条件语句:0 表示 false,anything 表示 true。
在您的代码中,您应该输入:
if(letter[i].charAt(0)=='j' || letter[i].charAt(0)=='J'){}
因为这就是它检查这两个字母是否存在的方式。
第二个是:
if(letter[i].charAt(0)!='j' || 'J'){}
同样的事情发生了。为了解决这个问题,我建议您使用符号 && 而不是 ||:
if (letter[i].chatAt(0)!='j' && letter[i].charAt(0)!='J'){}
这里我把完整的代码留给你:
var names = ["Yaakov", "John", "Jen", "Jason", "Paul", "Frank", "Larry", "Paula", "Laura", "Jim"];
var myFunc = function (letter) {
for (var i = 0; i < letter.length; i++) {
if (letter[i].charAt(0) == 'j' || letter[i].charAt(0)=='J') {
console.log("Goodbye " + names[i]);
}
if (letter[i].charAt(0) != 'j' && letter[i].charAt(0)!='J') {
console.log("Hello " + names[i]); }
}
}
myFunc(names);
与其像在 C 中那样将 char 处理成 char,我建议您使用这个 for 循环遍历整个数组:
for(let i in letter){
if (letter[i].charAt(0)=='J'){}
}
我向你保证,在很长一段时间内 运行 这会为你节省更多时间。
我是 Javascript 的新手,我有一些 C 语言方面的经验,但我不知道自己做错了什么。到目前为止 Javascript 真的很令人困惑,我不明白它,因为 C 是我除了 HTML 和 CSS 之外唯一知道的编程语言,我尝试了这两个代码但是 none其中有工作。
我正在尝试对 charAt 使用 for 循环和 if else 语句。目标是查看名称数组中的第一个字符,如果该字符是 'j' 或 'J',则打印出“Goodbye”+ name,如果不是,则打印出“Hello”+ name。我需要转换成 ASCII 码吗?任何见解或建议都会非常感谢。这是我在下面尝试过的。
var names = ["Yaakov", "John", "Jen", "Jason", "Paul", "Frank", "Larry", "Paula", "Laura", "Jim"];
for (var i = 0; i < names.length; i++) {
if (names[i].charAt(0) == 'j' || 'J') {
console.log("Goodbye " + names[i]);
} else(names[i].charAt(0) !== 'j' || 'J']) {
console.log("Hello " + names[i]);
}
}
var names = ["Yaakov", "John", "Jen", "Jason", "Paul", "Frank", "Larry", "Paula", "Laura", "Jim"];
var myFunc = function(letter) {
for (var i = 0; i < letter.length; i++) {
if (letter[i].charAt(0) == 'j' || 'J') {
console.log("Goodbye " + letter[i]);
}
if (letter[i].charAt(0) !== 'j' || 'J') {
console.log("Hello " + letter[i]);
}
}
}
myFunc(names);
你应该检查
if (names[i].charAt(0) == 'j' || names[i].charAt(0) == 'J')
一个
else
子句不带条件,所以应该是:
else {
// code here
}
如果您需要检查初始条件 if
之外的条件,您应该使用 :
else if (condition) {
// code here
}
第一个问题是:
if(letter[i].charAt(0)=='j' || 'J'){}
在谈论 js 时,它就像 C 中的条件语句:0 表示 false,anything 表示 true。
在您的代码中,您应该输入:
if(letter[i].charAt(0)=='j' || letter[i].charAt(0)=='J'){}
因为这就是它检查这两个字母是否存在的方式。
第二个是:
if(letter[i].charAt(0)!='j' || 'J'){}
同样的事情发生了。为了解决这个问题,我建议您使用符号 && 而不是 ||:
if (letter[i].chatAt(0)!='j' && letter[i].charAt(0)!='J'){}
这里我把完整的代码留给你:
var names = ["Yaakov", "John", "Jen", "Jason", "Paul", "Frank", "Larry", "Paula", "Laura", "Jim"];
var myFunc = function (letter) {
for (var i = 0; i < letter.length; i++) {
if (letter[i].charAt(0) == 'j' || letter[i].charAt(0)=='J') {
console.log("Goodbye " + names[i]);
}
if (letter[i].charAt(0) != 'j' && letter[i].charAt(0)!='J') {
console.log("Hello " + names[i]); }
}
}
myFunc(names);
与其像在 C 中那样将 char 处理成 char,我建议您使用这个 for 循环遍历整个数组:
for(let i in letter){
if (letter[i].charAt(0)=='J'){}
}
我向你保证,在很长一段时间内 运行 这会为你节省更多时间。