📜  JavaScript 面试问题和答案

📅  最后修改于: 2022-05-13 01:56:42.451000             🧑  作者: Mango

JavaScript 面试问题和答案

  1. Java和 JavaScript 有什么区别?
    JavaScript 是客户端脚本语言, Java是面向对象的编程语言,两者完全不同。
    • JavaScript:它是一种轻量级的编程语言(“脚本语言”),用于开发交互式网页。它可以将动态文本插入 HTML 元素。 JavaScript 也被称为浏览器的语言。
    • Java: Java是最流行和广泛使用的编程语言之一。它是一种面向对象的编程语言,并具有一个虚拟机平台,允许您创建几乎可以在每个平台上运行的编译程序。 Java承诺“编写一次,随处运行”。

  2. 什么是 JavaScript 数据类型?
    JavaScript中有三种主要的数据类型。
    • 原始
      • 数字
      • 字符串
      • 布尔值
    • 琐碎的
      • 空值
      • 不明确的
    • 合成的
      • 对象
      • 职能
      • 数组

  3. 哪个符号用于 JavaScript 中的注释?
    注释用于阻止语句的执行。编译器执行代码时会忽略注释。 JavaScript 中有两种类型的符号用于表示注释:
    • 双斜杠:称为单行注释。
      // Single line comment
    • 带星号的斜线:称为多行注释。
      /* 
      Multi-line comments
      ...
      */

  4. 3+2+”7”的结果是什么?
    这里 3 和 2 的行为类似于整数,而“7”的行为类似于字符串。所以 3 加 2 等于 5。那么输出将是 5+”7” = 57。

  5. isNaN函数有什么用?
    JavaScript 中的 Number.isNan函数用于判断传入的值是否为 NaN(非数字),是否为“数字”类型。在 JavaScript 中,值 NaN 被认为是一种数字。如果参数不是数字,则返回 true,否则返回 false。

  6. JavaScript 和 ASP 脚本哪个更快?
    JavaScript 比 ASP 脚本更快,因为 JavaScript 是一种客户端脚本语言,不依赖于服务器来执行它,但 ASP 脚本是一种始终依赖于服务器的服务器端脚本语言。

  7. 什么是负无穷大?
    JavaScript 中的负无穷大是一个常数值,用于表示最低可用值。这意味着没有其他数字小于该值。它可以使用自制函数或算术运算生成。 JavaScript 将 NEGATIVE_INFINITY 值显示为 -Infinity。

  8. 是否可以将 JavaScript 代码分成几行?
    是的,可以在字符串语句中将 JavaScript 代码分成几行。它可以通过使用反斜杠 '\'来中断。例如:
    document.write("A Online Computer Science Portal\ for Geeks")

    JavaScript 避免了代码中断行,这是不可取的。

    var gfg= 10, GFG = 5,
    Geeks =
    gfg + GFG;

  9. 哪家公司开发了 JavaScript?
    Netscape 开发了 JavaScript,并由 Brenden Eich 在 1995 年创建。

  10. 什么是未声明和未定义的变量?
    • 未定义:当变量已声明但尚未分配任何值时发生。未定义不是关键字。
    • 未声明:当我们尝试访问任何未使用 var 或 const 关键字初始化或声明的变量时,就会发生这种情况。如果我们使用'typeof'运算符来获取未声明变量的值,我们将面临运行时错误,返回值为“未定义”。未声明变量的范围始终是全局的。

  11. 为动态添加新元素编写 JavaScript 代码?
    
    
      
    
        
            JavaScript code for adding new
            elements dynamically
        
    
      
    
        
          
        
    
      
    
    

  12. 什么是全局变量?这些变量是如何声明的以及与它们相关的问题是什么?
    相反,全局变量是在函数之外定义的变量。这些变量具有全局范围,因此它们可以被任何函数使用,而无需将它们作为参数传递给函数。
    例子:
     
    

    依赖全局变量的代码很难调试和测试。

  13. JavaScript 中的 NULL 是什么意思?
    NULL 值表示没有值或没有对象。它可以称为空值/对象。

  14. 如何删除属性特定值?
    delete 关键字用于一次删除整个属性和所有值,例如
    var gfg={Course: "DSA", Duration:30};
    delete gfg.Course;

  15. 什么是提示框?
    它用于显示带有可选消息的对话框,提示用户输入一些文本。如果用户想在进入页面之前输入一个值,通常会使用它。它返回一个包含用户输入的文本的字符串,或 null。

  16. JavaScript 中的“this”关键字是什么?
    JavaScript 中的函数是必不可少的对象。像对象一样,它们可以分配给变量,传递给其他函数并从函数返回。就像对象一样,它们也有自己的属性。
    'this' 存储 JavaScript 程序的当前执行上下文。因此,当它在函数中使用时,'this' 的值将根据函数的定义方式、调用方式和默认执行上下文而改变。

  17. 解释 JavaScript 中计时器的工作原理?还要阐明使用计时器的缺点(如果有的话)?
    定时器用于在特定时间执行某些特定代码或重复执行任何少量代码,您需要使用函数setTimoutsetIntervalclearInterval 。如果 JavaScript 代码将计时器设置为 2 分钟,当时间到时,页面会显示警告消息“时间到”。 setTimeout()方法在指定的毫秒数后调用函数或计算表达式。

  18. ViewState 和 SessionState 有什么区别?
    • ViewState:它特定于会话中的单个页面。
    • SessionState:特定于用户,可以访问网页中的所有数据。

  19. 如何使用 JavaScript 提交表单?
    您可以使用document.form[0].submit()方法在 JavaScript 中提交表单。

  20. JavaScript 是否支持自动类型转换?
    是的,JavaScript 支持自动类型转换。

相关文章: JavaScript 面试常见问题 |设置 1