Новинки 2020 года: 100 вопросов для фронтенд-интервью с ответами (ниже)

опрос

Новинки 2020 года: 100 предварительных вопросов для интервью с ответами (часть 1)Сейчас прочитал 1.3W, и неделю по уговорам многих упоротых друзей быстро разобрался с очередной статьей.

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


51. Напишите результат выполнения и объясните причину

["1", "2", "3"].map(parseInt);

Категория: JavaScript

Ответы и анализ


52. Напишите результат выполнения и объясните причину

[typeof null, null instanceof Object]

Категория: JavaScript

Ответы и анализ


53. Напишите результат выполнения и объясните причину

function f() {}
const a = f.prototype,b = Object.getPrototypeOf(f)
console.log(a === b);

Категория: JavaScript

Ответы и анализ


54. Напишите результат выполнения и объясните причину

function showCase(value) {
    switch(value) {
    case 'A':
        console.log('Case A');
        break;
    case 'B':
        console.log('Case B');
        break;
    case undefined:
        console.log('undefined');
        break;
    default:
        console.log('Do not know!');
    }
}
showCase(new String('A'));

Категория: JavaScript

Ответы и анализ


55. Выберите правильный ответ

console.log([2,1,0].reduce(Math.pow));
console.log([].reduce(Math.pow));

/ *
A. 2 报错
B. 2 NaN
C. 1 报错
D. 1 NaN
*/

Категория: JavaScript

Ответы и анализ


56. Будет ли переменная a подвергаться сбору мусора?

function test(){
    var a = 1;
    return function(){
        eval("");
    }
}
test();  

Категория: JavaScript

Ответы и анализ


57. Напишите результат выполнения и объясните причину

const value  = 'Value is' + !!Number(['0']) ? 'yideng' : 'undefined';
console.log(value);

Категория: JavaScript

Ответы и анализ


58. Напишите результат выполнения и объясните причину

var arr = [0,1];
arr[5] = 5;
newArr = arr.filter(function(x) { return x === undefined;});
console.log(newArr.length);

Категория: JavaScript

Ответы и анализ


59. Напишите результат выполнения и объясните причину (при условии последней версии браузера Google)

async function async1() {
    console.log('async1 start');
    await async2();
    console.log('async1 end');
}
async function async2() {
	console.log('async2');
}
console.log('script start');
setTimeout(function() {
    console.log('setTimeout');
}, 0)
async1();
new Promise(function(resolve) {
    console.log('promise1');
    resolve();
}).then(function() {
    console.log('promise2');
});
console.log('script end');

Категория: JavaScript

Ответы и анализ


60. При каких обстоятельствах будет печататься 1 в следующем коде

var a = ?;
if(a == 1 && a== 2 && a== 3){
 	console.log(1);
}

Категория: JavaScript

Ответы и анализ


61. Напишите результат выполнения и объясните причину

const obj = {
    '2': 3,
    '3': 4,
    'length': 2,
    'splice': Array.prototype.splice,
    'push': Array.prototype.push
}
obj.push(1)
obj.push(2)
console.log(obj)

Категория: JavaScript

Ответы и анализ


62. Могут ли родительские компоненты Vue отслеживать жизненный цикл дочерних компонентов? Если можно, напишите свой метод реализации.

Категория: Вью

Ответы и анализ


63. Сколько уровней приоритета устанавливает механизм вызова React для задач? Каково конкретное значение каждого приоритета? Если во время разработки вы сталкиваетесь с задачами, влияющими на отрисовку основного пользовательского интерфейса, как вы используете эти приоритеты?

Категория: Реагировать

Ответы и анализ


64. Будут ли следующие два фрагмента кода вызывать исключения? объяснить причину?

let yd = { x: 1, y: 2 };
// 以下两段代码会抛出异常吗?
let ydWithXGetter1 = {
  ...yd,
  get x() {
    throw new Error();
  },
};

let ydWithXGetter2 = {
  ...yd,
  ...{
    get x() {
      throw new Error();
    },
  },
};

Категория: JavaScript

Ответы и анализ


65. Напишите результат преобразования типа массива и объясните, почему

const arrLike = {
  length:4,
  0:0,
  1:1,
  '-1':2,
  3:3,
  4:4,
}
console.log(Array.from(arrLike));
console.log(Array.prototype.slice.call(arrLike));

Категория: JavaScript

Ответы и анализ


66. Каков результат выполнения следующего кода для оператора спреда? и объясни почему

let ydObject = { ...null, ...undefined };
console.log(ydObject);
let ydArray = [...null, ...undefined];
console.log(ydArray);

Категория: JavaScript

Ответы и анализ


67. Каков результат приведенного ниже кода для длины? и объясни почему

 function foo(){
   console.log(length);
 }
function bar(){
  var length = "京程一灯";
  foo();
}
bar();

Категория: JavaScript

Ответы и анализ


68. Пожалуйста, напишите результат печати следующего кода

var obj = {};
var x = +obj.yideng?.name ?? '京程一灯';
console.log(x);

Категория: JavaScript

Ответы и анализ


69. Что касается неявного преобразования, каков результат выполнения следующего кода? и объясни почему

let a = [];
let b = "0";
console.log(a == 0);
console.log(a == !a);
console.log(b == 0);
console.log(a == b);

Категория: JavaScript

Ответы и анализ


70. Что касается массива сортировки, правильно распечатайте следующий код, что это такое и объясните, почему

const arr1 = ['a', 'b', 'c'];
const arr2 = ['b', 'c', 'a'];
console.log(
  arr1.sort() === arr1,
  arr2.sort() == arr2,
  arr1.sort() === arr2.sort()
);

Категория: JavaScript

Ответы и анализ


71. Напишите результат выполнения следующего кода для сравнения null и 0 и объясните причину

console.log(null == 0);
console.log(null <= 0);
console.log(null < 0);

Категория: JavaScript

Ответы и анализ


72. Расскажите об архитектуре апплета WeChat и о том, почему он использует двухпоточность.

Компания: Куайшоу

Категория: апплет

Ответы и анализ


73. Откройте случайную веб-страницу, используйте JavaScript для печати всех тегов, начинающихся с s и h, и рассчитайте тип тегов.

Компания: Куайшоу

Категория: JavaScript

Ответы и анализ


74. Дан массив, найти первое число справа от каждого элемента, которое больше его, если нет, вернуть -1 Правило возвращает массив

/*
 *示例:
 *给定数组:[2,6,3,8,10,9]
 *返回数组:[6,8,8,10,-1,-1]
 */

Компания: Куайшоу

Категория: JavaScript

Ответы и анализ


75.В чем разница между tcp и udp? Как TCP обеспечивает правильность данных? Что содержит заголовок tcp? К какому слою относится tcp?

Компания: Тутиао, Вингер

Категория: Сеть и безопасность

Ответы и анализ


76. Представьте HTTPS, в чем разница между http и http? Почему https более безопасен, чем http? Как настроить?

Компании: Winger, Tiger, Maimai, One-to-One, Himalaya, Secoo, Tencent App, Kuaishou.

Категория: Сеть и безопасность

Ответы и анализ


77. Расскажите о своем понимании React-redux и его принципа, и какие проблемы он в основном решает?

Компания: Али, Маймаи

Категория: Реагировать

Ответы и анализ


78. Трехстороннее рукопожатие TCP

Компания: Cainiao Network, Toutiao

Категория: Сеть и безопасность

Ответы и анализ


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

Компания: Тутиао

Категория: Инжиниринг

Ответы и анализ


80. Существуют ли какие-либо методы сохранения данных в React?

Компания: Луковая Академия

Категория: Реагировать

Ответы и анализ


81. Пожалуйста, используйте алгоритм, чтобы реализовать из данного неупорядоченного, неповторяющегося массива данных, вынуть n чисел и сделать их сумму как сумму. И укажите временную/пространственную сложность алгоритма. (Вам не нужно искать все решения, просто найдите одно)

function getResult(data,n,sum){
  // your code
}

Компания: Тутиао

Категория: Алгоритмы

Ответы и анализ


82. Как обрабатывать асинхронные запросы в Redux

Компания: Диди

Категория: Реагировать

Ответы и анализ


83. Что такое глубокая копия и в чем разница между поверхностной копией и глубокой копией

Компании: SF Express, New Oriental, AutoNavi, Hupu, WeDoctor, Percentage, Kugou

Категория: JavaScript

Ответы и анализ


84. Представьте веб-пакет и расскажите о процессе создания веб-пакета.

Компания: Toutiao, Wacai

Категория: Инжиниринг

Ответы и анализ


85. Представления о замыканиях, зачем использовать замыкания? Рассказываем о принципе закрытия и сценариях применения

Компании: Didi, Ctrip, Himalaya, WeDoctor, Mogujie, Kujiale, Tencent App, Anjuke.

Категория: JavaScript

Ответы и анализ


86. Как реализовать расчет больших чисел

Компания: Луковая Академия

Категория: JavaScript

Ответы и анализ


87. Расскажите о принципе встряхивания деревьев

Компания: Тутиао

Категория: Инжиниринг

Ответы и анализ


88. Расскажите об алгоритме сравнения React.

Компания: Маймай

Категория: Реагировать

Ответы и анализ


89. Написанная вручную реализация Array.flat()

Компания: Капельное, Быстрое, Ctrip

Категория: JavaScript

Ответы и анализ


90. Что такое ПВА? Что вы знаете о PWA?

Компания: Toutiao, Гималаи

Категория: Сеть и безопасность

Ответы и анализ


91. Как нарисовать сектор в Css и реализовать его вручную

Компания: Тутиао

Рубрика: Css, вопросы по программированию

Ответы и анализ


92. Разговор о боксовой модели и о разнице между стандартным корпусом и IE

Компания: Искупить

Категория: CSS

Ответы и анализ


93.Уми и два при чем? Почему уми появляются два? Что использовать в неудобном месте?

Компания: Луковая Академия

Категория: Другое

Ответы и анализ


94. Что такое CDN? Опишите принцип работы CDN? Зачем использовать CDN?

Компания: Toutiao, Didi, NetEase

Категория: Сеть и безопасность

Ответы и анализ


95. es5 реализует isInteger

Компания: Тутиао

Категория: JavaScript

Ответы и анализ


96. Очередь реализации односвязного списка

Компания: Тутиао

Категория: Алгоритмы

Ответы и анализ


97. Как обрабатывать рукописные операции dom, переворачивать теги li и т. д.

/*
 *有下边这样的dom结构,现在可以获取到ul,要求翻转里边li标签,如何处理更优
 */
<ul>
  <li>1</li>
  <li>2</li>
  <li>3</li>
</ul>

Компания: Куайшоу

Классификация:

Ответы и анализ


98. Как определить, является ли объект массивом, и как поступать с массивоподобными объектами

Компания: Куайшоу

Категория: JavaScript

Ответы и анализ


99. Разбираетесь ли вы в glob, как glob обрабатывает файлы и есть ли другие решения в отрасли?

Компания: Куайшоу

Категория: JavaScript

Ответы и анализ


100. Расскажите, как реализована поддержка активности Vue и что конкретно кешируется?

Компания: Куайшоу

Категория: Вью

Ответы и анализ


Артефакт очистки интерфейса

Этих вопросов недостаточно? Отсканируйте код, чтобы попасть на планету фронтенд-интервью🌍, разблокируйте артефакт для закрашивания вопросов, а также вы можете получить800+ вопросов для фронтенд-интервьюа такжеПервоочередные общие интервью на высокочастотных тестовых площадках.