Javascript охраняет в нескольких слоях приложения - PullRequest
2 голосов
/ 13 июня 2019

Допустим, у нас есть такая функция:

someFunc(item) {
  if (!item.itemType) return false

item проверка параметров выполняется в каком-то другом слое приложения, поэтому она "никогда" не получает значение falsy. Мой подход все еще проверяет это так:

someFunc(item) {
  if (!item || !item.itemType) return false

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

Является ли мой подход хорошим в том смысле, что должна проводиться каждая проверка параметров и что мы всегда должны проверять конкретные вещи, например, проверить, является ли тип параметра массив, объект, ноль и т. д.? У меня есть эта дискуссия с моим коллегой, который предпочитает делать это, как в первом примере.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...