在JS中运行一个简单的函数

时间:2019-03-15 11:33:55

标签: javascript

var list:string [];

list = [ "pet", "luscy" ];

for (var i = 0; i < list.length; i++)
{
      list.push(list[i]. toLowerCase()); 
} 

我不知道我在做什么错。

4 个答案:

答案 0 :(得分:2)

那是一个无限循环。您将推入相同的数组,list.length每次迭代都会增加。

如果要使每个字符串都小写;您可以使用Array.map

list = [ "pet", "luscy" ];

list = list.map(l => l.toLowerCase())

答案 1 :(得分:0)

这应该对您有用,但这取决于您实际想要实现的目标。

var list = ["pet", "luscy"];
const listLength = list.length;

for (var i = 0; i < listLength ; i++) {
    list.push(list[i].toLowerCase()); 
} 

答案 2 :(得分:0)

只需执行以下操作:

["pet", "luscy"].map(v => v.toLowerCase());

答案 3 :(得分:-1)

当您推动时,长度会增加,并且会导致无限循环,因为您每次读取的都是更新后的长度。

在操作前将值存储为length = list.length,如果您打算在循环中更新数组,请使用此长度

在函数调用之前,似乎还有一个空格。

list = [ "pet", "luscy" ];

let length = list.length
for (var i = 0; i < list.length; i++)
{
      list.push(list[i].toLowerCase()); 
}

此列表以[“ pet”,“ luscy”,“ pet”,“ luscy”]的形式返回; 但不确定这是否是原始意图。