• Как строго отделить Array от Object?

    rockon404
    @rockon404
    Frontend Developer
    Это что троллинг?
    Для определения массива достаточно Array.isArray
    Для определения объекта:
    function isObject(item) {
      return (typeof item === "object" && !Array.isArray(item) && item !== null);
    }

    Если в вашем коде возникают трудности с определением типа данных могу порекомендовать использовать TypeScript или Flow.

    Еще старайтесь писать читаемый код. Использование ни о чем не говорящих аргументов, отсутствие пробелов между операторами и операндами, и !0, !1 вместо true, false не очень хорошая практика.
    Ответ написан
  • Взаимодействие React и сторонним API?

    rockon404
    @rockon404
    Frontend Developer
    1. Вы не указали протокол(http в вашем случае). Поэтому ответ получаете не от API OWM, а от своего localhost:3000. Если бы вы внимательно посмотрели на свойство url в консоли, на вкладке network или хотя бы на своем скриншоте, вы бы это заметили.
    2. Ответ надо парсить методом res.json(). Но без указания протокола это бесполезно. Так как ваш localhost:3000 судя по статусу 200 возвращает html с приложением. Отсюда ошибка:
    SyntaxError: Unexpected token < in JSON at position 0

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

    Исправленный вариант:
    fetch(`http://api.openweathermap.org/data/2.5/forecast/?q=${this.state.value}&cnt=1&APPID=e94f24c463ec7a0d1a69ebdebc88c694&lang=ru`)
          .then(res => res.json())
          .then(json => console.log(json));
    Ответ написан
    Комментировать
  • Как собрать JS object из нескольких файлов по шаблону?

    rockon404
    @rockon404
    Frontend Developer
    Так сейчас никто не пишет. Не изобретайте велосипед.
    Используйте ES6 модули и Webpack.
    Судя по необходимости рендерить html, вам стоит посмотреть в сторону современных фронтенд фреймворков.
    Ответ написан
    Комментировать
  • Как лучше организовать приложение с моментальной отдачей клиент-сервер?

    Yertuwernat
    @Yertuwernat
    Кратко о себе: живу в России, не женат, характер
    SSE или WebSocket
    Ответ написан
    Комментировать