#javascript
#javascript
Вопрос:
список переменных: строка[];
list = [ "pet", "luscy" ];
for (var i = 0; i < list.length; i )
{
list.push(list[i]. toLowerCase());
}
Я не знаю, что я здесь делаю не так.
Комментарии:
1. Что вы намерены делать?
2. Вам не нужно нажимать.
3. @squeekyDave, ну, мы не знаем, что он хочет сделать
4. @jo_va хехе, да, я просто предполагаю, что ему интересно, почему его функция не работает 🙂
Ответ №1:
Это бесконечный цикл. Вы вводите один и тот же массив, list.length
который увеличивается с каждой итерацией.
Если вы хотите сделать каждую строку строчной; Вы можете использовать Array.map
.
list = [ "pet", "luscy" ];
list = list.map(l => l.toLowerCase())
Ответ №2:
Это должно сработать у вас, но это зависит от того, чего вы на самом деле пытаетесь достичь.
var list = ["pet", "luscy"];
const listLength = list.length;
for (var i = 0; i < listLength ; i ) {
list.push(list[i].toLowerCase());
}
Ответ №3:
Просто сделай это:
["pet", "luscy"].map(v => v.toLowerCase());
Ответ №4:
Когда вы нажимаете, длина увеличивается, и это вызывает бесконечный цикл, поскольку вы считываете обновленную длину на каждой итерации.
сохраните значение как length = list.length
перед операцией и используйте эту длину, если вы планируете обновлять массив в цикле
Также, кажется, перед вызовом функции есть пробел.
list = [ "pet", "luscy" ];
let length = list.length
for (var i = 0; i < list.length; i )
{
list.push(list[i].toLowerCase());
}
Это возвращает список как [ «домашнее животное», «ласковый», «pet», «ласковый»];
Но не уверен, было ли это первоначальным намерением.
Комментарии:
1. Пробел не наносит никакого вреда (как и остальные странные отступы)