首页 > web前端 > js教程 > 开发面试问题

开发面试问题

DDD
发布: 2025-01-05 13:46:45
原创
495 人浏览过

Perguntas de entrevista DEV

以下是编程问题列表,每个问题都有解释性答案和附加示例:

1. SQL 中事务的目的是什么?

答案:

确保数据库中存储数据的完整性。

说明:

SQL 事务确保对数据库执行的操作一致且安全。它们遵循 ACID 原则(原子性、一致性、隔离性和持久性),确保事务中的所有操作要么执行,要么都不执行。如果发生故障,事务可以回滚,保持数据完整性。

示例:

想象一下涉及在两个银行账户之间转账的交易。如果转账中途失败,则必须回滚交易以确保资金不丢失。


2. 在软件开发中使用打字的主要原因是什么(例如在 TypeScript 中)?

答案:

轻松检测错误和错误。

说明:

与 TypeScript 一样,静态类型有助于在开发过程中甚至在代码执行之前识别类型错误。这可以显着减少与不正确数据类型相关的错误数量,使维护更容易并提高代码质量。

示例:

在 TypeScript 中,当将变量声明为 letage: number = "25"; 时,编译器会生成错误,因为我们将字符串分配给 number 类型的变量。


3. 在应用程序中使用 ORM(对象关系映射器)有什么好处?

答案:

简化将对象映射到数据库表的过程。

说明:

ORM 允许您使用代码中的对象并自动将它们映射到数据库表,而无需直接编写 SQL。这有利于与数据库的交互,提高工作效率并避免常见的 SQL 错误。

示例:

使用像 Sequelize(适用于 Node.js)这样的 ORM,当您创建 User 对象时,您可以自动将该对象保存并检索到数据库,而无需手动编写 SQL 查询。


4. JavaScript 中 null 和 undefined 的主要区别是什么?

答案:

“Null”被显式分配以指示不存在任何对象值,而“undefined”是未初始化变量的默认值。

说明:

  • null 是显式分配的值,用于指示不存在值或对象。
  • undefined 是已声明但未初始化的变量的默认值。

示例:

let a = null;  // null é atribuído explicitamente
let b;         // b é undefined porque não foi inicializado

console.log(a);  // null
console.log(b);  // undefined
登录后复制
登录后复制

5. 如何使用 Flexbox 将元素在其父容器中水平居中?

答案:

将“display: flex”属性应用于父容器并使用“justify-content: center”属性。

说明:

Flexbox 可以轻松对齐元素。要使元素水平居中,必须将父容器配置为 display: flex 并使用 justify-content: center 将项目水平居中对齐。

示例:

.container {
  display: flex;
  justify-content: center;
}

.item {
  width: 50%;
}
登录后复制
<div>




<hr>

<h3>
  
  
  6. <strong>Como otimizar o pseudocódigo para verificar se um número N é primo?</strong>
</h3>

<p><strong>Resposta:</strong><br><br>
<strong>Utilizar a raiz quadrada de N como limite superior do loop.</strong></p>

<p><strong>Explicação:</strong><br><br>
Em vez de verificar todos os números até (N-1), você pode verificar até a raiz quadrada de (N). Isso reduz significativamente a quantidade de verificações, pois, se (N) tem um divisor maior que sua raiz quadrada, o outro divisor já terá sido encontrado antes.</p>

<p><strong>Exemplo:</strong><br>
</p>

<pre class="brush:php;toolbar:false">function isPrime(N) {
  if (N <= 1) return false;
  for (let i = 2; i <= Math.sqrt(N); i++) {
    if (N % i === 0) return false;
  }
  return true;
}
console.log(isPrime(29));  // true
登录后复制

7. SQL 中事务的目的是什么?

答案:

确保数据库中存储数据的完整性。

说明:

SQL 中的事务用于确保对数据库的操作正确完成或回滚。这可以确保即使发生故障数据库也保持一致。

示例:

在销售交易中,如果更新库存后付款失败,可以回滚交易,以确保库存不更新而未付款。


8. Git 中的哪个命令可以撤消错误执行的合并?

答案:

git merge --abort

说明:

如果您运行合并并意识到您从错误的分支引入了更改,则可以使用 git merge --abort 命令取消合并并返回到之前的状态,而不应用更改。

示例:

git merge feature-branch
# Se perceber que o merge foi feito na branch errada
git merge --abort
登录后复制

9. 使用 ORM(对象关系映射器)的主要好处是什么?

答案:

简化将对象映射到数据库表的过程。

说明:

ORM 允许您在代码中使用对象,并且 ORM 负责自动将这些对象映射到数据库,而无需直接编写 SQL。

示例:

使用Sequelize ORM,当您创建新用户时,它会自动将数据保存到数据库,而无需您编写SQL:

let a = null;  // null é atribuído explicitamente
let b;         // b é undefined porque não foi inicializado

console.log(a);  // null
console.log(b);  // undefined
登录后复制
登录后复制

这些示例和解释应该可以帮助您更好地理解编程问题中涵盖的概念。

以上是开发面试问题的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板