JavaScript 中5个常见面试题及解答

发布于:2024-03-18 ⋅ 阅读:(52) ⋅ 点赞:(0)

JavaScript(JS) 是一种多才多艺的编程语言,在面试中经常出现一些具有挑战性的编码问题。在这篇博客文章中,我们将探讨一些用 JavaScript 编写的编码面试问题,并揭示它们的解决方案。让我们开始吧!

  1. 问题:编写一个函数,反转给定的字符串。
function reverseString(str) {  
  return str.split('').reverse().join('');  
}  
  
console.log(reverseString('Hello'));  
// 输出:'olleH'

2. 问题:编写一个函数,找出句子中最长的单词。

function findLongestWord(sentence) {  
  const words = sentence.split(' ');  
  let longestWord = '';  
  
  for (let i = 0; i < words.length; i++) {  
    if (words[i].length > longestWord.length) {  
      longestWord = words[i];  
    }  
  }  
  
  return longestWord;  
}  

console.log(findLongestWord('The quick brown fox jumps over the lazy dog'));  
// 输出:'quick'

3. 问题:编写一个函数,从数组中移除重复的元素。

function removeDuplicates(arr) {  
  return [...new Set(arr)];  
}  
  
console.log(removeDuplicates([1, 2, 2, 3, 4, 4, 5]));  
// 输出:[1, 2, 3, 4, 5]

4. 问题:给定一个包含从 1 到 N 的数字的数组,其中一个数字缺失,找出缺失的数字。

function findMissingNumber(arr) {  
  const n = arr.length + 1;  
  const sum = (n * (n + 1)) / 2;  
  const arrSum = arr.reduce((acc, curr) => acc + curr, 0);  
  
  return sum - arrSum;  
}  
  
console.log(findMissingNumber([1, 2, 3, 5]));  
// 输出:4

5. 问题:编写一个函数,检查给定的字符串是否是回文。

function isPalindrome(str) {  
  const reversedStr = str.split('').reverse().join('');  
  return str === reversedStr;  
}  
  
console.log(isPalindrome('level'));  
// 输出:true

上面提供的例子涵盖了一系列挑战,包括字符串操作、数组操作和逻辑推理。通过练习这些问题并理解其中的基本概念,你将更好地准备好应对编码面试中类似的挑战。祝你在 JavaScript 面试中好运!

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到