предисловие
Пост стажера, доставленный в Tencent, никогда не звонил по телефону. Я проверил статус и сказал, что это неприемлемо. Я подумал, что это круто, но сегодня мне позвонили, что было неожиданно... Потом понеслось.Сначала интервьюер сказал, что времени будет не много, минут 30. В итоге весь процесс продлился минут 30.
Вот процесс интервью:
Самостоятельное введение
- Кратко расскажите о своей школе и специальности, а также о процессе обучения.
Могу ли я работать в Шэньчжэне (Гуанчжоу, где должно быть написано мое резюме)
Вы понимаете области видимости JavaScript? Как много
- глобальная область
- объем функции
В: Есть ли в JavaScript блочная область?
A: До ES5 не было области видимости блока, ES6 представила эту концепцию.
Разница между let и var
- var можно повторить, пусть нельзя
- Область действия переменной let отличается, и нет переменной продвижения.
В: Есть что-нибудь еще
отвечать:...
Что вы знаете о ES6 и какие функции вы использовали?
- Кратко опишите некоторые из функций, которые я использовал
- стрелочная функция
- строка шаблона
- Class
- module
- деструктуризация объекта
- Promise
- ......
Обещания понятно? сколько штатов
- Три состояния:
- pending
- fulfilled
- reject
- Два процесса:
- pending -> fulfilled
- pending -> rejectd
В: Когда обещания войдут в улов? Ответ: Когда ожидание отклонено
Расскажите мне о проекте реагирования в вашем резюме
- Кратко опишите пункты вашего резюме
Каков жизненный цикл реакции
- инициализация
- constructor
- getInitialProps
- getDefaultState
- componentWillMount
- render
- componentDidMount
- процесс обновления
- componentWillReceiveProps
- shouldComponentUpdate
- componentWillUpdate
- render
- componentDidUpdate
- Процесс удаления (это не ответ)
- componentWillUnmount
Когда использовать componentwillreceiveprops
- Я не использую много, поэтому я не ответил
- онлайн объяснение
Использовали ли вы инструменты для сборки? Что делает загрузчик webpack?
- В проекте используется вебпак
- Загрузчик используется для компиляции и обработки ресурсов
В: Использовали ли вы другие инструменты сборки?
Ответ: Нет... (gg)
В чем разница между vue и реагированием
- Открытые вопросы, бесплатная игра
Принцип двусторонней привязки данных vue
- В основном говорят о реализации на основе
Object.defineProperty
- Кроме того, он также примерно объяснил модель публикации-подписки, в основном Observer, Dep, Watcher и т. д.
Используется ли ajax в проекте родной или какая библиотека используется?
- Все они используют инкапсулированную библиотеку, основными являются
axios
Вы понимаете код состояния http?
- Кратко рассказал, для чего нужны 2xx, 3xx, 4xx, 5xx.
- 304 упоминается здесь, поэтому есть следующий http-кеш
При каких обстоятельствах будет возвращен код состояния 304?
- Этот вопрос сложнее, вот ответ Etag
- ETag является продуктом HTTP1.1. Сервер вычисляет уникальный идентификатор ресурса с помощью определенного алгоритма, который может быть значением MD5 ресурса. При ответе на ресурс клиенту он добавит «ETag: значение к заголовок объекта. ", возвращается клиенту вместе
- Клиент сохранит это поле и передаст его серверу в следующем запросе.Сервер принимает значение ETag, отправленное клиентом, а затем сравнивает значение ETag до и после, чтобы определить, относится ли ресурс к клиент, был ли изменен терминал
- Если он совпадает, сервер вернет код состояния 304 и предложит клиенту напрямую использовать локальный кеш, в противном случае ресурс будет возвращен в обычной форме GET200.
- Соответствующее поле заголовка
- If-None-Match: значение ETag
- If-Match: значение ETag
- Еще один следующий
Last-Modified
В чем разница между http-кэшем, кешем-контролем и etag
- Хотя ответ здесь, но я чувствую, что ответ не очень хороший
- Cache-Control имеет много полей заголовка
- Если кеш, установленный Cache-Control, не истек, вы можете напрямую прочитать кеш из локального, вернуть 200 (из кеша) и не нужно инициировать запрос к серверу.
- Использование ETag инициирует запрос к серверу, и сервер будет решать, возвращать ли ресурс после проверки
- ...
В дополнение к etag, последнее изменение знаете?
- Не ответил, забыл
- Когда сервер передает ресурс клиенту, он добавит клиенту время последнего изменения ресурса в форме «Last-Modified: GMT» и добавит его в заголовок объекта.
- Клиент помечает ресурс информацией, и при следующем запросе информация будет возвращена на сервер с сообщением запроса, и сервер проверит, совпадает ли окончательное время модификации ресурса на сервере , ресурс не был изменен, напрямую возвращает код состояния 304, не возвращает контент
- Соответствующее поле заголовка
- If-Modified-Since: Last-Modified-value
- If-Unmodified-Since: Last-Modified-value
Как обстоят дела с междоменными?
- JSONP
- CORS
- прокси сервера
- and more then...
Каков принцип JSONP?
- использовать
script
Тег поддерживает междоменные атрибуты, тег script используется для получения метода обертывания данных (эквивалентно возврату куска js-кода), обратный вызов включается в запрос, сервер вводит параметры и возвращает функцию обратного вызова , а затем тег script получает возвращаемое значение. Код js запускает обратный вызов непосредственно между доменами, что требует взаимодействия внешнего и внутреннего интерфейса.
Может ли JSONP использовать почтовый запрос? Зачем?
- не поддерживается
- Поскольку тег script поддерживает только запросы на получение...
В чем разница между файлами cookie и локальным хранилищем?
- Размер данных cookie не может превышать 4 КБ.
- Файлы cookie передаются туда и обратно между сервером и клиентом.
- Cookie может устанавливать множество свойств, максимальный возраст, путь, срок действия и т. д.
- localStorage хранит постоянные данные, и данные не теряются после закрытия браузера, если данные не удаляются активно
- LocalStorage хранит больше данных
В: Есть что-нибудь еще
Ответ:.....(гг)
Описать блочную модель css
- Разговор о стандартной модели коробки и странном режиме
Каковы методы достижения вертикального и горизонтального центрирования?
- flexbox
- Абсолютное позиционирование + отрицательное значение поля (известная ширина и высота)
- Абсолютное позиционирование + преобразование отрицательного значения (неизвестная ширина и высота)
- Абсолютное позиционирование вверху слева справа внизу 0 + поле авто
Q: Используется ли абсолютное позиционирование сверху слева справа внизу 0 + поле, когда известны ширина и высота?
А: Я....забыл
Суммировать
Примерно через 30 минут интервьюер сказал, что я пока буду здесь, и я сообщу вам как можно скорее, когда будут новости, и тогда все закончится. Приведенные выше вопросы все еще очень простые, и на некоторые из них еще нет ответов, поэтому нам все еще нужно продолжать усердно работать.
4.20 Обновить
следовать заnuggets.capable/post/684490…
Технический запрос документов Nuggets:juejin.cn/post/1