Вроде решил задачу, но приложение ее не принимает

Задача:

"Вы создаете шифратор текста, он должен использовать несколько слов и вывести в результат скомбинированную версию, где каждое слово отделено знаком $. Например, для слов "hello", "how", "are", "you", результат должен выглядеть следующим образом: "$hello$how$are$you$". Данный код объявляет класс Add, с конструктором, который берет один rest параметр. Завершите код, добавив к классу метод print(), который должен создать необходимый результат."

Я ее сделал следующим образом, однако программа ругается, что код неверен. Почему?

Вот код:

class Add{//исходно дано в задаче
    constructor(...words){//исходно дано в задаче
        this.words = words;//исходно дано в задаче
    }//исходно дано в задаче
    print(){ //создал метод print, как условлено в задаче
        var str = this.words.join("$");//сделал переменную, которая выведет новый массив с $ вместо запятых
        var b = "$"+str+"$"; //новая переменная, что прибавит вначале и в конце массива по знаку, как надо
        console.log(b);// вывод этой задачи. И как я проверяю, все работает 
    }
}
var x = new Add("hehe", "hoho", "haha"); //исходно дано в задаче
var y = new Add("this", "is", "awesome");//исходно дано в задаче
var z = new Add("lorem", "ipsum", "dolor", ",", "sit");//исходно дано в задаче
x.print();//исходно дано в задаче
y.print();//исходно дано в задаче
z.print();//исходно дано в задаче


Ответы (1 шт):

Автор решения: DiD

Возможно, не надо было отправлять результат с запятой и прочими "не словами".

class Add{//исходно дано в задаче
    constructor(...words){//исходно дано в задаче
        this.words = words;//исходно дано в задаче
    }//исходно дано в задаче
    print(){ //создал метод print, как условлено в задаче
        var str = this.words.filter((value)=>/^[a-z]+$/i.test(value)).join("$");//сделал переменную, которая выведет новый массив с $ вместо запятых
        var b = "$"+str+"$"; //новая переменная, что прибавит вначале и в конце массива по знаку, как надо
        console.log(b);// вывод этой задачи. И как я проверяю, все работает 
    }
}
var x = new Add("hehe", "hoho", "haha"); //исходно дано в задаче
var y = new Add("this", "is", "awesome");//исходно дано в задаче
var z = new Add("lorem", "ipsum", "dolor", ",", "sit");//исходно дано в задаче
x.print();//исходно дано в задаче
y.print();//исходно дано в задаче
z.print();//исходно дано в задаче

→ Ссылка