Функция скрипта Google Apps Splice не работает - PullRequest
0 голосов
/ 01 ноября 2018

Я новичок в Javascript, но не для кодирования. Я люблю начинать с простых простых примеров. Я пытаюсь вставить элементы в массив с помощью сплайсинга. Примеров предостаточно! Все они получают одинаковый результат!

function ArrTest(){ 
var fruits = ["Banana", "Orange", "Apple", "Mango"];
    Logger.log("before " + fruits.length);

fruits.splice(2, 0, "Lemon", "Kiwi");
    Logger.log("after " + fruits.length);
}

Когда я пытаюсь запустить, я получаю сообщение об ошибке в строке "fruits.splice ...":

TypeError: Невозможно найти функцию соединения в объекте [массив объектов].

Я нахожусь на Windows 10 (в актуальном состоянии), используя Chrome (последняя версия). Каждый раз, когда я ищу эту ошибку, я получаю больше примеров, показывающих, как это здорово работает! Буду очень признателен за любую помощь или направление.

Снимок экрана: я использую Chrome, откройте Google лист с Drive и затем Инструменты / Редактор скриптов:

Ответы [ 2 ]

0 голосов
/ 01 ноября 2018

Я буду считать это ответом. Спасибо всем за помощь и вклад.

Сращивание работает как положено. На чистом листе без другого кода пример, который я разместил, работает отлично. Очевидно, у меня было что-то еще в другом проекте, прикрепленном к тому же листу, который вызывал проблему. Я до сих пор не понимаю, что именно, но это может быть предметом для другого вопроса.

0 голосов
/ 01 ноября 2018

Вы определили переменную как фрукты , но ошибка сказала фрукты . фрукты переменная не определена. Следовательно, вы можете получить эту ошибку. Сплайс работает только для объекта массива. Ниже код работает нормально для меня.

var fruits = ["Banana", "Orange", "Apple", "Mango"];
        console.log("before " + fruits.length);
    
    fruits.splice(2, 0, "Lemon", "Kiwi");
        console.log("after " + fruits.length);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...