7个JavaScript面试问题进行练习

陶有为 98 0

技术面试可能会带来压力,但会告诉雇主很多有关您的信息。技术面试让雇主看到您可以在压力下成长。它们使雇主可以看到您实际上拥有简历中列出的技能。

JavaScript面试问答

这些问题涵盖了基本的JavaScript概念和更高级的JavaScript概念,因此您可以准备提出一系列问题。在继续阅读之前,尝试阅读问题并自己回答,以了解您的表现。

forEach循环和.map()函数之间有什么区别?

这两个JavaScript的foreach循环和map()函数叠代列表中的项目。

forEach循环为列表中的每个元素执行一个回调函数。一旦运行,它将不返回任何值。map语句在列表中的每个元素上调用一个函数,并返回具有该函数返回的值的转换数组。

简而言之,forEach()循环不返回新数组,而map()函数可以。

什么是JavaScript承诺?使用Promise而非回调有什么好处?

一个JavaScript的承诺是写更多的异步代码的方式。Promise定义有两个功能:解析功能和拒绝功能。如果Promise成功执行,则resolve函数返回到主程序;否则,返回拒绝函数。

承诺可以避免“回调地狱”。在这里,您可以在回调函数中定义回调函数。回调地狱导致代码不可读。与回调不同,Promise支持.then()语句。这意味着,如果您使用Promise,则可以使代码块的运行顺序更清晰。

如何检查数组是否为空?

要检查数组是否为空,请使用“ if”语句:

if (array_name === undefined || array_name.length === 0) {
// Code to run}

首先,“ if”语句确保已定义数组。如果没有此检查,如果找不到“ array_name”,我们的代码将返回错误。

接下来,我们的代码检查“ array_name”的长度是否等于0。如果以上条件之一成立,则将执行“ if”语句。

函数中的默认参数是什么?

默认参数使您可以为函数中的参数指定默认值。这意味着您在调用函数时未定义值,并且将在其位置设置默认值。

使用以下语法编写默认参数:

function multiply_numbers(number_one = 0, number_two = 0) {
return number_one * number_two;}

默认参数指定为参数名称,后跟等号,后跟要设置的默认值。

这种语法意味着您无需在开始在函数中使用值之前检查是否已定义值。因此,默认参数使函数更易于阅读和理解。

同步功能和异步功能有什么区别?

同步函数要等到方法中的每个语句都已运行后,才能继续执行下一个语句。这意味着同步功能是逐行读取的,并且可能取决于先前语句的值才能成功工作。

另一方面,异步函数无需停止等待函数值即可执行每一行代码。异步函数通常取决于Promise或在主程序运行时执行的回调。Promise或回调将一个值返回给主程序。

什么是箭头功能?

箭头函数是定义JavaScript函数的另一种方法。箭头函数使您无需使用function()关键字即可定义函数。这使您可以编写更简洁易读的代码。

箭头功能可以写在一行上:

const multiply_values = (value1, value2) => console.log(value1 * value2);

箭头函数就像常规函数表达式一样接受参数。您无需使用带有箭头功能的return语句。这是因为如果仅返回一个值,则箭头函数会隐式返回一个值。

如何从对象数组中过滤出值?

从对象数组中过滤出值的有效方法是使用JavaScript filter()函数。筛选器功能迭代项目列表,并创建满足特定条件或一组条件的新项目列表。

考虑以下学生名单:

var students = [ { name: “Sam”, grade: 6 }, { name: “Alix”, grade: 7 }];

要检索六年级的所有学生,我们使用过滤器功能:

var sixth_grade = students.filter(student => (student.grade === 6));

我们的代码返回了所有六年级的学生:

{ name: “Sam”, grade: 6 }

什么是函数式编程?

JavaScript支持功能和面向对象的编程。函数式编程是一种编程范例,其中使用纯函数编写程序。

纯函数产生相同的输出。这使它们更易于阅读,调试和解释。考虑纯函数的一种方法就像计算器。如果您在计算器中将9乘以9求出值,则将始终返回81。

JavaScript提供了一流的函数和高阶函数等功能,以支持函数式编程范例。其他功能性编程语言包括Lisp,Haskell和Elm。

准备面试

与任何技能一样,要变得更好,唯一的方法就是练习。技术面试没有什么不同。尽管您无法为可能出现的每一个问题做好准备,但在面试之前每多练习一分钟,就会增加成功的机会。

在面试中,深入解释您的答案以及如何得出答案。这样做可以使面试官更多地了解您的想法。如果您对问题的答案是错误的,那么面试官可能会使用您的流程来查看您是否处在正确的轨道上。

标签: IT学习 JavaScript 面试题

发表评论 (已有0条评论)

还木有评论哦,快来抢沙发吧~