📜  JavaScript 面试问答 |设置 3

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

JavaScript 面试问答 |设置 3

Javascript面试问题列表
我们已经讨论了一些基于 JavaScript 的面试问题。

  • JavaScript 面试问答 |第一组
  • JavaScript 面试问答 |第 2 组

以下是一些更相关的问题:

  1. JavaScript 中的“严格”模式是什么以及如何启用它?
    严格模式是 ECMAScript 5 中的一项新功能,它允许您将程序或函数置于“严格”操作上下文中。这种严格的上下文会阻止执行某些操作并引发更多异常。语句“use strict”指示浏览器使用严格模式,这是 JavaScript 的一个精简且更安全的功能集。

  2. 如何获取 CheckBox 的状态?
    DOM Input Checkbox 属性用于设置或返回复选框字段的选中状态。此属性用于反映 HTML Checked 属性。
    document.getElementById("GFG").checked;

    如果 CheckBox 被选中,则返回 True。

  3. 如何解释 JavaScript 中的闭包以及何时使用它?
    即使在父函数已经执行之后,当子函数保持父作用域的环境时,也会创建闭包。闭包是与函数相关的本地声明变量。闭包将在使用它们时提供对代码的更好控制。
    // Explanation of closure 
    function foo() { 
        var b = 1; 
        function inner() { 
            return b; 
        } 
        return inner; 
    } 
    var get_func_inner = foo();         
      
    console.log(get_func_inner()); 
    console.log(get_func_inner()); 
    console.log(get_func_inner()); 
    

  4. call() 和 apply() 方法有什么区别?
    两种方法都用于不同的情况
    • call() 方法:它调用方法,以所有者对象为参数。关键字 this 指的是函数的“所有者”或它所属的对象。我们可以调用一个可用于不同对象的方法。
    • apply() 方法: apply() 方法用于编写方法,可以在不同的对象上使用。它与函数call() 不同,因为它将参数作为数组。

  5. 如何从 JavaScript 中的超链接定位特定框架?
    这可以通过使用超链接中的目标属性来完成。像

  6. 编写 JavaScript 中显示的错误?
    javaScript 中存在三种不同类型的错误。
    • 语法错误:语法错误是旨在以特定编程语言编写的字符或标记序列的语法错误。
    • 逻辑错误:这是最难追踪的错误,因为它是编码逻辑部分的错误,或者逻辑错误是程序中的错误,导致程序运行不正确并异常终止。
    • 运行时错误:运行时错误是程序运行过程中发生的错误,也称为异常。

  7. JavaScript 和 Jscript 有什么区别?
    JavaScript:
    • 它是由 Netscape 开发的脚本语言。
    • 它用于设计客户端和服务器端应用程序。
    • 它完全独立于Java语言。

    脚本:

    • 它是微软开发的一种脚本语言。
    • 它用于为万维网设计活跃的在线内容。

  8. var myArray = [[]];是什么意思?声明声明 ?
    在 JavaScript 中,此语句用于声明二维数组。

  9. 在 JavaScript 代码中可以通过多少种方式访问 HTML 元素?
    在 JavaScript 中访问 HTML 元素有四种可能的方法:
    • getElementById() 方法:用于通过元素的 id 名称获取元素。
    • getElementsByClass() 方法:用于获取具有给定类名的所有元素。
    • getElementsByTagName() 方法:用于获取具有给定标签名称的所有元素。
    • querySelector() 方法:此函数采用 css 样式选择器并返回第一个选定的元素。

  10. innerHTML 和 innerText 有什么区别?
    innerText 属性将文本内容设置或返回为指定节点及其所有后代的纯文本,而 innerHTML 属性设置或返回元素中的纯文本或 HTML 内容。与 innerText 不同,内部 HTML 允许您使用 HTML 富文本,并且不会自动对文本进行编码和解码。

  11. 什么是 JavaScript 中的事件冒泡?
    考虑一种情况,一个元素存在于另一个元素中,并且它们都处理一个事件。当冒泡中发生事件时,最里面的元素首先处理该事件,然后是外部的,依此类推。

  12. 以下代码的输出是什么?
    var X = { geeks : 1}; 
    var Output = (function() { 
        delete X.geeks; 
        return X.geeks; 
    })(); 
      
    console.log(output);
    

    这里的删除将删除对象的属性。 X 是具有 geeks 属性的对象,它是一个自调用函数,将从对象 X 中删除 geeks 属性,因此结果将是未定义的。

  13. JavaScript 和 ECMA 脚本有什么关系?
    JavaScript 是必须维护一些规则和规定的主要语言,即 ECMA Script,这些规则也为 JavaScript 语言带来了新功能。

  14. 如何从不支持 JavaScript 的旧浏览器中隐藏 JavaScript 代码?
    要从不支持 JavaScript 的旧浏览器中隐藏 JavaScript 代码,您可以使用
     after  tag

    所有旧的浏览器都会把它当作 HTML 的长注释。支持 JavaScript 的新浏览器会将其作为在线评论。

  15. 以下代码的输出是什么?
    var output = (function(x) {
        delete x;
        return x;
    })(0);
      
    document.write(output);

    输出将为 0。delete运算符用于删除对象的运算符,但 X 不是对象,这里它是一个局部变量。删除运算符不影响局部变量。

  16. 在 JavaScript 中,回答以下表达式的结果是真还是假。
    "0" == 0   // true or false ? 
    "" == 0   // true or false ? 
    "" == "0"   // true or false ?
    • 第 1 和第 2 种情况的结果为True ,第 3 种情况的结果为False

  17. 如何使用任何浏览器进行调试?
    通过按 F12 我们可以触发任何浏览器的调试模式,并可以通过点击控制台查看结果。

  18. 什么是 javascript 提升?
    当任何解释器运行代码时,所有变量都会重新提升到原始范围的顶部。该方法适用于声明,不适用于变量的初始化。这被称为 javascript 提升。

  19. “自调用函数”的语法是什么?
    自调用函数的语法:最后一个括号包含函数表达式。
    (function () {
      return // body of the function
    }());

  20. 如何在另一个 JavaScript 文件中使用外部 JavaScript 文件?
    您可以使用以下代码将外部 JavaScript 代码用于另一个 JavaScript 文件。