[Еженедельно-3] Трехлетний интервьюер на крупной фабрике — десять предварительных вопросов на собеседовании (приветствуются вызовы)

JavaScript

предисловие

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

Адрес проекта:GitHub.com/Ай Руи спать/мы…

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

вопрос интервью вызов

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

Вопрос 1: Пожалуйста, разработайте стратегию атаки на сервер

Позвольте мне предложить несколько общих стратегий

  • Одним из примеров является некоторое время назад огонь назад, поддача ложного пакета NPM + Nodejs версия полезной нагрузки
  • Атака десериализации Nodejs

На самом деле, если вы уделите больше внимания Zhihu или каким-то фронтенд-хот-спотам, вы обнаружите, что есть много кейс-объяснений таких атак и уязвимостей, но есть ли какие-то стратегии и идеи, которые сложны и до которых никто не додумался? ?

Добро пожаловать, чтобы показать свою силу и креативность

Ответ будет объявлен в пятницу.Если у вас есть хорошие идеи или ответы, пожалуйста, оставьте сообщение под github, соответствующее этой теме:GitHub.com/Ай Руи спать/мы…

Вопрос 2: Пожалуйста, напишите регулярку, удалите все атрибуты в строке тега html и сохраните атрибуты src и href

Простое понимание этой темы состоит в том, чтобы написать регулярное выражение, которое преобразует строку 'Обычный'Конвертировано в'Обычный'.

Конечно, строка, содержащая HTML-код веб-страницы, сложнее.

Тем более, что ответы на первые три статьи по этому вопросу в гугле все имеют серьезные проблемы, и мало написать несколько кейсов.

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

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

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

Ответ будет объявлен в пятницу.Если у вас есть хороший ответ или идея, пожалуйста, оставьте сообщение под github, соответствующее этой теме:GitHub.com/Ай Руи спать/мы…

Вопрос 3: Почему в проекте реагирования, конструктор(){ this.target = this.func.bind(this);}, onChange={this.target} в JSX лучше, чем non-bind func = () = > { } очень эффективен, пожалуйста, объясните принцип

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

Добро пожаловать в вызов

Ответ будет объявлен в пятницу.Если у вас есть хорошие идеи или ответы, пожалуйста, оставьте сообщение под github, соответствующее этой теме:GitHub.com/Ай Руи спать/мы…

Вопрос 4. Вставьте 100 000 фрагментов данных в базу данных, как оптимизировать и обрабатывать вставку БД в условиях высокой параллелизма.

Такого рода вопросы, знаете ли, очень высокие, яркие и слепые, а большая фабрика слишком любит тест.

Тем не менее, FE, который имеет возможность и действительно имел дело с этими ситуациями с высоким параллелизмом, является хорошей возможностью продемонстрировать их.

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

идем играть?

Ответ будет объявлен в пятницу, и вызовы приветствуются.Если у вас есть хорошие идеи или ответы, пожалуйста, оставьте сообщение под github, соответствующее этой теме:GitHub.com/Ай Руи спать/мы…

Вопрос 5: Объясните, почему 0.1+0.2 равно 0.300000000000000004 в js Как решить эту проблему через код?

Второй вопрос, позвольте мне дать вам простую идею: преобразовать числа с плавающей запятой в целые числа для вычислений.

Ответ не уникален, добро пожаловать, чтобы предоставить лучшие идеи

Ответ будет объявлен в пятницу, и вызовы приветствуются.Если у вас есть хорошие идеи или ответы, пожалуйста, оставьте сообщение под github, соответствующее этой теме:GitHub.com/Ай Руи спать/мы…

Вопрос 6. Разработайте стратегию и метод для реализации HTTP-запросов во внешних проектах https.

Ответ будет объявлен в пятницу, и вызовы приветствуются.Если у вас есть хорошие идеи или ответы, пожалуйста, оставьте сообщение под github, соответствующее этой теме:GitHub.com/Ай Руи спать/мы…

Вопрос 7: В iframe встроена страница A. Ширина и высота iframe постоянно меняются. Как сделать так, чтобы ширина и высота страницы A адаптировались к ширине и высоте iframe в режиме реального времени. Назовите не менее 3 способов, чем сложнее, тем лучше

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

Ответ будет объявлен в пятницу, и вызовы приветствуются.Если у вас есть хорошие идеи или ответы, пожалуйста, оставьте сообщение под github, соответствующее этой теме:GitHub.com/Ай Руи спать/мы…

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

В это время вы столкнетесь с рефакторингом проекта различных фреймворков.

Если вы столкнулись с этими проблемами и планируете переписать проект, то очень неблагодарно. Эти проблемы могут быть решены на уровне фреймворка.

Я предлагаю идею, например интегрировать проект реакции в проект angular, вы можете начать с ReactDOM.render в сочетании с маршрутизацией angular.

Предложите еще одну идею, например, простые проекты vue и react, вы можете использовать ast и другие методы для преобразования кода друг в друга. Но я практиковал это раньше, и я столкнусь со многими плохими случаями.

Остальные идеи можно оспорить.

Ответ будет объявлен в пятницу, и вы можете оставить сообщение под гитхабом, соответствующее этой теме:GitHub.com/Ай Руи спать/мы…

Вопрос 10: Расскажите о разнице между png8, png16, png32 и кратко расскажите о принципе сжатия png

В ответ на проблему принципа png я написал статью, которая легкая, забавная и понятная, вы можете прочитать ее и расслабиться.«Принцип сжатия изображений PNG — Tears of Diaosi»

общаться с

Я головастик, сейчас работаю старшим фронтенд инженером

Добро пожаловать в мою общедоступную учетную запись WeChat, отсканируйте QR-код ниже в WeChat или выполните поиск в общедоступной учетной записи «Внешний интерфейс Diaosi», расскажите о мысленном путешествии контратаки внешнего интерфейса Diaosi и поддержите друг друга.

image