Неделю-две с тех пор, как я приехал в Ханчжоу.В эти выходные шел дождь, поэтому я поехал туда, когда мне было некуда идти, или я по привычке включил свой компьютер и просмотрел технический форум.Подумав об этом, я не обновился моя запись в блоге в течение длительного времени. . .
задний план
потому что я прочитал статьюИнтервью и обмен информацией: предварительное исследование внешнего набора Alibaba в социальных сетях с годовым опытомТак что приезжайте в Ханчжоу с целью, NetEase! Для меня было бы большой честью присоединиться к Али. Поэтому интервью всегда ленивое, и интервью про одну семью примерно через день.
Тогда мой технологический стек, вероятно, будет реагировать + узел, адрес GitHub:Nealyang
Текущее состояние таково, что Али прошел техническое и поперечное сечение, вероятно, лицо директора + лицо hr в следующий понедельник. Интервью с Netease hr завершено, ждем уведомления, iFLYTEK уже получил предложение, которое все еще является довольно хорошим предложением.Другие стартапы и зарегистрированные на бирже компании в основном получили предложение, будь то искусственный интеллект или умный дом, но. . . Ну и еще есть заветное желание большой завод. Может быть, его похоронил университет.
Так как мне лень бегать по собеседованиям, я отвечал на телефонные звонки многих компаний, но не ходил на очные собеседования многих компаний. вопросы, заданные в интервью. , потому что я не хотел записывать это раньше, так что многие из меня забыли, что это такое. Насколько я помню, я отметил, что это за фирма.
интервью начинается
Вероятно, я ушел из всемирной паутины в январе, а потом собрал вещи в Пекине, чтобы обобщить свои знания, и начал рассылать свои резюме, вероятно, все они были наняты непосредственно начальником и выше крючка.
Раздел HTML и CSS
- css общий макет
Об этом часто спрашивают в интервью для листинговых компаний и стартапов. Возможно, я отвечу на некоторые блочные модели, включая странную блочную модель, позиционную компоновку, потоковую компоновку, плавающую компоновку, флекс и сеточную компоновку, в том числе Святой Грааль и двойное крыло в трехколоночной компоновке. Все они относительно знакомы, поэтому я все еще знаю, когда спрашиваю. Среди них есть много вопросов о гибкой компоновке, и другие компании задавали вопросы о некоторых свойствах подэлементов в поперечном сечении Али.
- BFC
Этого Didi спросили во время интервью (DiDi сделал исключение, позволив мне присоединиться к процессу, и стек технологий, который они также наняли, был vue). Обычно, когда их просили очистить флот, они что-то говорили.
- проблема центрирования
Это должно быть обыденностью, об этом во время телефонного интервью спросили две компании.
- Разница между сеансом, файлом cookie, sessionStorage, localStorage и т. д.
Об этом также спрашивают зарегистрированные на бирже компании и стартапы, вероятно, чтобы рассказать о разнице в середине и кратко рассказать о свойствах файлов cookie, а также о некоторых аспектах безопасности переднего плана.
- Разница между px/em/rem
Я спрашивал это во времена Диди Дяньпина, и я тоже это знаю.В нем, наверное, говорилось, что размер определяется относительно родительского элемента или документа.
- Связанные свойства анимации и перехода
Я также использовал грубое, сокращенное расположение и атрибуты, которые я, вероятно, знал. Конечно, Али также спросил, почему C3 рекомендуется для анимации вместо js. На этот вопрос в то время не было хорошего ответа, вероятно, из-за производительности. , но что занимает главное нить и браузерное ускорение с3 не обсуждается. Затем Netease также спросил в интервью, и тогда я, Барабара, сказал соответствующие вещи, которые я проверил позже. Затем NetEase спросил, как браузер оптимизирует анимацию. . . Я. . . понятия не имею.
- Заметки о написании css
Так как это не было явно оговорено в предыдущей команде, я не резюмировал, а примерно рассказал о методе в собственной кодировке и процессе проверки браузера.
- Про css и HTML задают не так много вопросов, а есть другие теги, мета и медиа, которые, вероятно, вводятся.Они не очень глубокие, и я не очень подробно ответил. . . Потому что мой HTML CSS действительно средний.
Раздел JavaScript
- Какие типы данных существуют в JavaScript?
Это вопрос для начинающей компании, и вопросы очень простые, такие как рисование треугольников css и так далее. Не говорите, я не готовился раньше, я действительно забыл, как установить границу, чтобы она выглядела как прямоугольный треугольник или равнобедренный треугольник. Конечно, этот тип все еще. . . нечего сказать
- Закрытие JavaScript
Об этом нужно часто спрашивать, я обобщал это ранее, а также часто используемые сценарии, а также говорил об области действия и режиме синглтона в сочетании с es6.
- Внешний междоменный интерфейс
В принципе, я это знаю, я уже резюмировал это на Nuggets, и многие компании задавали этот вопрос, включая Alibaba и NetEase. Я знаю общий способ, конкретное расширение сделает поля информации о междоменных доменах и заголовках CORS снова упомянутыми. не сложно
- Наследование JavaScript
Я также резюмировал связанные статьи ранее.Второй интервьюер со стороны NetEase спросил.Я, вероятно, говорил о преимуществах, недостатках и методах реализации прототипного наследования, наследования конструктора, наследования композиции, паразитарного наследования композиции и es6.Метод реализации. Обычно это ответ. Позже NetEase спросили, как es5 реализует ключевое слово super. Видел преобразованный код Babel, но это. . Я действительно забыл прочитать это. Я, наверное, говорил о своей собственной идее реализации, которая заключается в том, чтобы украсить узор. А потом преодолел это.
- Дроссель и отказ в JavaScript
Диди спрашивал об этом, и Али тоже спрашивал, говоря о бизнес-сценариях. Я читал эту статью раньше, и я использовал ее в своих проектах, так что я, вероятно, что-то знаю
- События JavaScript
Механизм выполнения js-события задал Али кроссфейс. Наверное, я говорил о цикле событий, микрозадаче, очереди задач. Затем в общих чертах обсуждались этапы делегирования события, захвата, баблинга и таргета, а также, кстати, таргет и currentTarget.
- метод запроса ajax
Поскольку это следует рассматривать как проверку базовых навыков, я рассказал о процессе XMLHTTPRequest, нескольких типах readyState и их значениях. И решение для совместимости браузера.
- js для определения метода типа данных
Кажется, две компании спросили, и они примерно рассказали о методах оценки, мерах предосторожности, преимуществах и недостатках typeof, instanceof, конструктора, прототипа и т. д. должен быть в состоянии ответить
- Объявления функций и объявления переменных
Я, наверное, знаю это, и я также говорил о вещах, связанных с es6.
- Проблема, на которую указывает это
Это я также резюмирую связанные статьи, примерно рассказываю о следующих четырех правилах привязки, а также рассказываю о процессе выполнения новых и мерах предосторожности для стрелочных функций.
-
объектно-ориентированное понимание Диди спросил о понимании и реализации и рассказал о реализации es5 и es6 с точки зрения инкапсуляции, наследования и полиморфизма.
-
Что вы думаете о языке js
Вау, это действительно большой вопрос. Я читал "Сущность языка JavaScript" и говорил об общих проблемах слаботипизированных языков. Поскольку я занимался Java раньше, я провел всестороннее сравнение, а также рассказал, как решить эти критические замечания. Интервьюер должен быть вполне удовлетворен
- Очки знаний, связанные с ES6
Этот ответ не должен быть очень подробным, вероятно, я использовал его, и я также изучал реализацию промисов, но я не помню, какая компания спрашивала, как реализован генератор. Наверное, от итератора вкратце объяснил свой план, а потом сказал, что не видел его. Тогда не о чем спрашивать о других вещах. Базовая процедура — это es6, вы поняли? какой синтаксис использовался. Позже мы можем поговорить о том, какая новая функция реализована, или обратиться к babel и webpack за соответствующими интервью.
Реагировать раздел
- Должен быть жизненный цикл для реактивной части
Здесь я кратко расскажу о каждом жизненном цикле, о двух методах написания es5 и es6 и о том, какие операции мы обычно используем для каждого жизненного цикла.
- Является ли setState асинхронным или синхронным
Когда Али спросил, когда я был на стороне, я, наверное, говорил о двух методах настройки setState, и тот, который показывает синхронизацию.
- Какой из дочерних компонентов и родительских компонентов componentDidMount выполняется первым
Это также, вероятно, в стадиях от жизненного цикла. Другими словами, я до сих пор не знаю, правильный ли мой ответ, друзья-технари, что вы думаете?
- Общий процесс редукции
Мне это знакомо, и я расскажу обо всех стеках технологий, а также о принципе react-redux, высокоуровневых компонентах и принципе реализации redux-saga. (Если успеете на встречу, говорите все и сами выучите ритм. Но это должно быть уместно. Например, если вы спросите меня про es6, я буду говорить 20 минут. В общем, интервьюер будет немного нетерпелив. Так что это зависит от ситуации. зависит)
- Как спроектировать некоторые компоненты, каковы принципы, какие компоненты вы написали, гордые или яркие?
Али и зарегистрированная на бирже компания также учуяли эту подобную проблему, вероятно, из-за аспектов комбинирования, повторного использования, повторения, тестирования, обслуживания и т. д.
- Компонент a находится в компоненте b, компонент c находится в компоненте a, как сделать так, чтобы компонент a и компонент c находились на одном уровне
На вопрос, который Али задал во время интервью, после некоторого размышления ответил «нет». После проверки этого, вероятно, можно добиться, возвращая компоненты без обертывания элементов в react16. Потому что я счастливо болтал с Али позже, я добавил WeChat, и осмелился спуститься с ним.Он сказал, что есть еще способ спасти страну через кривую.
- Оптимизация реагирующих компонентов
Поговорим о pureRenderMixin, ShouldComponentUpdate и т. д., а также о дизайне компонентов и способе написания функций для формирования марионеток.
- Связь реактивных компонентов
Также было сказано несколько способов сделать это, снова было сказано проп, контекст (кстати, контекстная реализация react-redux), редукс и даже трансляция
- Реализация алгоритмов виртуального дома и сравнения React
Али спросил кроссфейс и прямо сказал, что исходники метода реализации не читал, но примерно объяснил принципы и шаги, а конкретный код писать не знаю.
- Вы понимаете MVC и MVVM?Как реализовать двустороннюю привязку данных и одностороннюю привязку?
Диди спрашивал, но я еще не знал метода реализации, и тут я рассказал про шаблоны проектирования MVC и MVVM, т.к. раньше я использовал angular1, наверное, я говорил про шаги грязной проверки и роль view-model
- Реализация React-маршрутизатора, вещи, связанные с одностраничным приложением
В нем примерно рассказывается об общем использовании react-router и о том, как использовать API истории h5 для реализации переходов маршрутизации, когда react-router не используется.
- Вы понимаете реакцию ssr? Как добиться
Али спросил на стороне.Он написал демку на github, но не использовал другие сторонние библиотеки.Здесь я кратко расскажу о элементах конфигурации вебпака и общих идеях реализации и мерах предосторожности.
- React наверное просили написать так. Другое дело, как писать код и анализировать конкретные бизнес-сценарии. Это относительно непопулярно. Я остановлюсь на этом здесь. На самом деле, это проверит ваш проектный опыт. Конечно, есть и некоторые вопросы интервью для React Native, такие как общие компоненты и как общаться с нативом, У них много лайков и вопросов, но, поскольку RN не очень тщательный, они не очень понимают принцип взаимодействия. Что ж.
браузер
- Как получить HTML после http трехстороннего рукопожатия, как загрузить его в браузер
Вопрос, заданный Али, я раньше занимался обменом связанными технологиями в мире, поэтому я, вероятно, знаю, что от процесса до различий между различными ядрами (разница часть кратко упоминается) я говорил о процессе dom, CSSDom и paint . Затем интервьюер спросил, как предотвратить перерисовку и перекомпоновку. Вероятно, следует избегать таких операций, как перерисовка и перекомпоновка. NetEase также спрашивал о перерисовке и оплавлении.
- Что обычно делается для фронтенд-оптимизации?
Об этом уже говорилось ранее, военные правила Yahoo или что-то в этом роде. И оптимизация выше сгиба. Затем интервью было связано с некоторой предварительно загруженной информацией заголовка http Я не видел этого, и ответ был не очень хорошим.
- кеш браузера
Я также сделал соответствующий технический обмен по этому поводу, и я также прочитал "Иллюстрированный http", который, вероятно, сказал из http 1.0 и 1.1.Одна из компаний спросила разницу между 200 From cache и 200 ok (есть лайки), это правда я проигнорировал это, а потом проверил и узнал об этом. На самом деле это сильный кеш
- http общие коды состояния
От 100 до 500, наверное, больше дюжины. По сути, это то самое, что в «Иллюстрации http» сознательно запоминалось в то время.
- http2.0 связанные
С одной стороны, NetEase заявила, что 2.0 использует двоичный формат, мультиплексирование, сжатие заголовков пакетов, активную отправку сервером и соответствующий контент веб-сокета.WebSocket: от новичка до мастера за 5 минут. Затем NetEase спросил, как сжимается заголовок? Я. . . ? ? понятия не имею. . . Затем я, вероятно, спросил о TLS/SSL для https, и я читал о том, что связано с htts, в комиксах раньше, и я, вероятно, рассказал историю в комиксах~
- Разница между post и get
Этот ответ не очень хорош, это также вопрос, заданный крупной фабрикой, и мой ответ - все внешнее. Потом прочитал статью, наверное знаю.99% людей неправильно понимают разницу между GET и POST в HTTP.
- Больше ничего не помню, но добавлю, когда вспомню.
инструменты для сборки
- Вы написали расширение для веб-пакета, плагина или загрузчика?
Я прочитал книгу «Объяснение веб-пакета простыми словами», поэтому я могу в основном ответить на нее. Включая принципы и меры предосторожности при написании загрузчика и плагина. Конечно, я не писал его сам. . ."Углубленный веб-пакет"
- Babel не задавал много вопросов, но я его тоже подготовил, включая функцию каждого пакета и внутренний процесс конвертации.Не помню какая компания спрашивала, наверное я тоже говорил про процесс конвертации babel.
заключительные замечания
Ali, NetEase и другие уведомления будут объявлены со следующей недели. Другие компании в основном получали предложения, но, в конце концов, срок действия основных предложений, которые они получают, у крупных заводов истек. . . Никак, ведь есть большая фабричная мечта. Что ж, на самом деле это довольно удачно: руководитель отдела занятости Али и интервьюер очень весело болтают после добавления WeChat. Также спасибо супервайзеру GitHub за то, что следил за мной. Надеюсь присоединиться~
Это все, о чем я могу думать, я добавлю больше позже, если я думаю об этом.
ps: Внимание наггетсов в последнее время немного повысилось, и я не знаю почему, да и особо я в последнее время не учился, так что поторопился разобрать работу, не зная, работа ли это. Извините, если это не очень хорошо организовано. После окончания опыта поиска работы буду аккуратно лепить.