Сообщество Хекслета

Макс Горький 27 августа 2017 →

Не выдержал и посмотрел решение. Интуитивно понимал, что нужно использовать операторы rest и spread при вызове buildNode и вызове конструкторов. И не додумался до такой простой вещи, как значения аргументов по-умолчанию :/

maksbobs 27 августа 2017 →

Привет. Немного запутался с тестом. С какой ошибкой упадёт скрипт console.log(f(g(x)));? Правильно ли я понимаю, что изначально проверяется первая функция f(), затем вторая g(), при условии, что первая проходит без ошибок, а в конце x, если первые две прошли без ошибок? Но если f() не определена, зачем проверять остальные названия? Смутил правильный ответ ReferenceError: x is not defined. Я ответил ReferenceError: f is not defined.

demian 27 августа 2017 →

В решении учителя не понимаю конструкцию в классах:

  mode = 'clock';
  timeType = 'clockTime';
  NextStateClass = AlarmState;

Интуитивно вроде ясно - определяются переменные, но по форме - как можно определять свойства в классе вне конструктора, и без let к тому же? просто не понимаю, в прежних курсах такого не встречал.

Upd (закончил посл. урок) - фидбэк по курсу: очень интересно, но в концовке - чрезмерный скачек сложности. Причем сложность - именно в силу неравномерности уроков, из-за чего хуже усваивается. Перед последним уроком (а по-хорошему, и перед предпоследним тоже) напрашиваются несколько подводящих уроков.

(эта ремарка не отменяет моего вопроса)

Даша 27 августа 2017 →

Доброго времени суток. Прошу помощи в решении практической задачи. При попытке запустить данный код выдает ошибку: make: Entering directory '/usr/src/app' jest --colors FAIL tests/finalGrade.test.js ● Test suite failed to run

/usr/src/app/finalGrade.js: 'import' and 'export' may only appear at the top level (15:0)
    13 | // END
    14 | 
  > 15 | export default finalGrade;
       | ^
    16 | 

Test Suites: 1 failed, 1 total Tests: 0 total Snapshots: 0 total Time: 0.514s Ran all test suites. Makefile:2: recipe for target 'test' failed make: Leaving directory '/usr/src/app' make: *** [test] Error 1 Run failed! Check and fix errors above!

Пробовала сбрасывать и заново вставлять код между BEGIN и END, но снова выдает ту же ошибку. Подскажите, пожалуйста, с чем это связано? Заранее большое спасибо за помощь.

Aleksandr Litvinov 27 августа 2017 →

Привет! Что я делаю не так?

// removed

Ошибка:

Argument must be pair, but it was 'undefined

Если я правильно понимаю, ошибка появляется при вызове

findPrimitiveBox(cdr(pair));

Dmitrii Esin 27 августа 2017 →

Запутался с реализацией concat(). Просмотрел похожие вопросы, но пока не понял. У меня 2 идеи, как реализовать метод. 1) Алгоритм получается таким - пушу голову первого списка ко второму

// remove

но получается, что первый список "перевёрнут":


    Expected value to be (using ===):
      "(3, 4, 5, 8, 3, 2, 9)"
    Received:
      "(8, 5, 4, 3, 3, 2, 9)"

Видимо, тут не в аргументе ошибка, а реализация вообще не правильная.

2) Другой путь - не возвращать рекурсивно вызов concat, а возвращать пару(список), в первом аргументе который и будет наш рекурсивный вызов:

// remove

но здесь тоже ошибка:

Expected value to be (using ===):
      "(3, 4, 5, 8, 3, 2, 9)"
    Received:
      "(((((3, 2, 9), 3, 2, 9), 3, 2, 9), 3, 2, 9), 3, 2, 9)"

Понял как накапливает результат итеративный процесс и понял, как в стэке вызовов накапливается и затем вычисляется результат рекурсивного процесса, однако не могу в голове вычислить верную последовательность операций в этой задаче, немного не хватает интеллекта. Подкажите, пож-та, какой из описанных путей верный и где у меня косяк?

p.s. в качестве терминальной ветки в обоих случаях использую:

// remove

Спасибо).

Введение в Javascript
Наследование в JavaScript (архив)

user-b51ff069138009f7 26 августа 2017 →

я не понял как условий задания(Создайте функцию Computer. Она будет возвращать объект, который будет использован как конструктор при создании объекта mac. Создаваемый объект должен содержать следующие свойства (string): weight, cpu и videocard.

Прототип объекта mac не должен быть:

прототипом функции Computer самой функцией Computer) я должен сделать такое решение:

 function Computer() {
      return {
        weight: Math.random().toString(),
        cpu: Math.random().toString(),
        videocard: Math.random().toString()
      }
    }

Матвей Гребнев 26 августа 2017 →

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

CedrikWeb 26 августа 2017 →

const squareOfSum = (a, b) => {a ** 2 + a * a * b + b ** 2}

Что здесь не верно?

Алексей Григорченко 26 августа 2017 →

Если в решение учителя подставить данные из условия flatten([[1], ['key' => 'value', [4]]); то вывод будет:

Array
(
    [0] => 1
    [1] => 4
    [2] => 4
)

вместо:

[1, 'value', 4]

Где то ошибка? Про недостающую квадратную скобку в примере уже написали.