有什么方法可以使用循环将变量的字符串从小写变为大写?

时间:2020-09-18 17:11:51

标签: javascript loops

(对不起我的英语不好) 我是JS的新手,并且不断做一些奇怪的事情来学习JS的工作原理! 我目前想将数组字符串从小写更改为大写,并这样做,我正在执行以下操作:

        let names = ['Shakir', 'smith', 'Anderson', 'Kyle', 'Ketty', 'jason'];
        
      
for (var i=0; i<names.length; i++){
    
    // This also doesn't work, i'm not using let (or any other variable keyword because names has already been defined: names[i] = to.UpperCase(names[i]); 
    
// Neither does this: let names[i] = to.UpperCase(names[i]);
    
}

有人可以告诉我我在哪里误导吗?

再次,这是我的数组:

let names = ['Shakir', 'smith', 'Anderson', 'Kyle', 'Ketty', 'jason'];

我想将其中的所有字符串从小写转换为大写,例如:

 let names = ['SHAKIR', 'SMITH', etc..]

这可能吗?

2 个答案:

答案 0 :(得分:4)

您可以在循环中分配给数组条目:

for (var i=0; i<names.length; i++){
    names[i] = names[i].toUpperCase();
}

还要确保正确使用方法名称,我已经在上面进行了更正。这是字符串的方法,因此您可以在字符串上调用它,而不是将字符串作为参数传递给它。

另一种选择是创建一个新数组,其中包含修改后的条目,也许将其分配回相同的变量:

names = names.map(name => name.toUpperCase());

答案 1 :(得分:1)

该方法是.toUpperCase(),您需要在其前面添加字符串(请参阅文档:https://www.w3schools.com/JSREF/jsref_touppercase.asp

因此,在您的示例中,您需要执行以下操作:

let names = ['Shakir', 'smith', 'Anderson', 'Kyle', 'Ketty', 'jason']

for (var i = 0; i < names.length; i++) {
  names[i] = names[i].toUpperCase()
}