Поиск ошибок в языках/фреймворках, которых вы не знаете: node.js

Я помогаю своему первому ученику по node.js. Он пишет сервер на node.js, и я помог ему найти недостающую скобку, фигурную скобку и точку с запятой.

Я не знаю node.js, но я достаточно знаю Javascript, чтобы помочь.

Имею ли я право находить проблемы в проектах node.js сейчас?

Могу ли я указать это в своем резюме?

Как это возможно?


Вопросы, которые я задавал себе во время сеанса, чтобы помочь им:

  1. Как проверить, является ли объект массивом?
  2. Как проверить, является ли объект словарем?
  3. Как проверить, происходит ли обратный вызов функции?
  4. Как получить доступ к значениям в словаре?
  5. Имеют ли значение точки с запятой в Javascript?
  6. Как мне обрабатывать тело запроса POST в Node.js?

1. Как проверить, является ли объект массивом?

Это легко. Для этого есть встроенный метод:

isArray = Array.isArray(someArray);

2. Как проверить, является ли объект словарем?

Это не так просто, но если вы знаете ключи, которые должны быть на нем, вы можете попытаться получить к ним доступ.

v = someDict["someKnownKey"];

Если для известного ключа существует значение, то объект является словарем.

Я должен более подробно остановиться на этом… недостаточно или всегда возможно знать ключи заранее.


3. Как проверить, происходит ли обратный вызов функции?

мне нравится использовать alert() если можно, а иначе console.log() будет достаточно.


4. Как получить доступ к значениям в словаре?

v = someDict["someKey"];

5. Имеют ли значение точки с запятой в Javascript?

Сначала я подумал «нет», но…

Оказывается, они делают!

Как и в C, определение функции в них не нуждается:

function test() {
  // ...
}

Но если вы назначаете функцию переменной:

var f = function test() { 
  // ...
};

ТОГДА, это важно.


6. Как обрабатывать тело запроса POST в Node.js?

В верхней части файла добавьте эту строку:

const { parse } = require("querystring");

Затем вы можете проанализировать тело POST следующим образом:

parsedData = parse(postData);

Возвращаемый объект представляет собой словарь JSON, поэтому вы можете получить доступ к его значениям таким же образом.


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

Забавно, что у меня практически нулевой опыт работы с node.js, и все же я смог разобраться в проблемах, с которыми они столкнулись, определить синтаксические ошибки, используя простые процедуры отступа для выравнивания блоков кода, задать несколько основных вопросов о предполагаемая работа программы, проверка предположений о состоянии объектов/переменных и перемещение вещей из ранее сломанных в текущие рабочие.

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


Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *