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

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

JavaScript — это язык сценариев или программирования, позволяющий реализовывать сложные функции на веб-страницах. Для любого статического веб-сайта, использующего javascript, мы можем предоставить функцию. Или, другими словами, Javascript — это душа приложения, где HTML+CSS — это структура.

Чтобы понять основную концепцию, я бы порекомендовал вам прочитать книгу Javascript Good Parts by Douglas Crockford. В этой книге все описано очень подробно. Когда вы прочтете эту книгу, я уверен, что многие ваши сомнения развеются. Поскольку большинство разработчиков делают очень глупую ошибку, если концепция не ясна.

Это основная концепция, которую необходимо понять.

a) Es5, Es6 и TypeScript
b) Типы данных
c) функции
d) Подъем
d) Замыкание
e) Прототип
е) Шаблоны проектирования

Вот список программ, которые часто запрашиваются любой компанией.

1. Обратный регистр символов, например. снизу вверх.

function reverseUpper(str){
     return str.split("").map(item=>item==item.toLowerCase() ? item.toUpperCase() : item.toLowerCase();
}

2. Перевернуть строку без функции сборки

function reverse(str){
  let strs = "";
  for(var x = str.length-1; x>0; x--){
     strs+= str[x];
   }
  return strs;
}

3. Перевернуть массив без функции сборки

function reverseArrayInPlace(arr) {
  for (var i = 0; i <= Math.floor((arr.length - 1) / 2); i++) {
      let el = arr[i];
      arr[i] = arr[arr.length - 1 - i];
      arr[arr.length - 1 - i] = el;
  }
  return arr;
}
eg.
reverseArrayInPlace([1,2,2,3,5,2]

4. Найдите повторяющиеся значения из нескольких массивов.

function dups(){
var uniqueObject = {};
var duplicate = [];

if(arguments.length>0){
   for(var index in arguments){
     let arg = arguments[index]
     for(var x=0; x<arg.length; x++){
       if(!uniqueObject[arg[x]]){
         uniqueObject[arg[x]] = arg[x]
       } else {
         duplicate.push(arg[x])
       }
     }
    }
}

return Object.values(duplicate);
}
eg.
dups([1,2,3,4], [4,3,2,1]];

5. Найдите последовательный символ

function letterCount(str){
  var s= str.match(/([a-zA-Z])\1*/g)||[];
return s.map(function(item){
  return [item.charAt(0), item.length];
});
}
eg.
letterCount("abccdeffffkalmsrrrffabw");

Вот полезная ссылка для изучения Javascript

https://github.com/getify/You-Dont-Know-JS
https://developer.mozilla.org/en-US/docs/Learn/JavaScript
https ://scotch.io/bar-talk/4-javascript-design-patterns-you-should-know