JavaScript 面试问答 (2023) – 中级
在本文中,您将学习面试中最常见的JavaScript面试问题和答案。在继续学习 JavaScript 面试问题和答案 - 中级之前,首先我们学习完整的 JavaScript https://s.juejin.cn/ds/ie92pj5x/
1. JavaScript 中所有的循环结构是什么?
- while 循环**:**while 循环 是一个控制流语句,它允许根据给定的布尔条件重复执行代码。while 循环可以被认为是重复的 if 语句。
- for 循环**:**for 循环提供了一种编写循环结构的简洁方法。与 while 循环不同,for 语句在一行中使用初始化、条件和递增/递减,从而提供更短、易于调试的循环结构。
- do while:do-while循环类似于 while 循环,唯一的区别是它在执行语句后检查条件,因此是退出控制循环的一个示例。
2. 如何更改元素的样式/类?
要更改元素的样式/类,有两种可能的方法。我们使用document.getElementByID方法
document.getElementById("myText").style.fontSize = "16px;
document.getElementById("myText").className = "class";
3. 解释如何使用 JavaScript 读取和写入文件?
- readFile()函数用于读取操作。
readFile( Path, Options, Callback)
- writeFile() 函数用于写入操作。
writeFile( Path, Data, Callback)
4. JavaScript 中什么叫变量类型?
变量类型是用于存储数字并使用相同的变量分配“字符串”的变量类型。
Geeks = 42;
Geeks = "GeeksforGeeks";
5. 如何在 JavaScript 中将任何基数的字符串转换为整数?
在 JavaScript 中,parseInt() 函数用于将字符串转换为整数。此函数返回一个 base 整数,该整数在 parseInt() 函数的第二个参数中指定。parseInt() 函数在字符串不包含数字时返回 Nan(不是数字)。
6. 说明如何检测客户端计算机上的操作系统?
要检测客户端计算机上的操作系统,只需使用 navigator.appVersion 或 navigator.userAgent 属性即可。属性是一个只读属性,它返回表示浏览器的版本信息的字符串。
7. JavaScript 中可用的弹出框有哪些类型?
JavaScript 中有三种类型的弹出框可用。
- alert
- confirm
- Prompt
8. 警报框和确认框有什么区别?
alert框将仅显示一个按钮,即“确定”按钮。它是用来通知用户必须同意的协议。但是“confirm”框显示两个按钮“确定”和“取消”,用户可以在其中决定是否同意。
9. 在 JavaScript 中使用 innerHTML
有什么缺点?
在 JavaScript 中使用 innerHTML 有很多缺点,因为内容会在任何地方替换。如果你使用+=,比如“innerHTML = innerHTML + ‘html’”,旧内容仍然会被HTML替换。它保留附加到任何 DOM 元素的事件处理程序。
10.void(0) 有什么用?
void(0) 用于调用另一个方法,而不在调用时间内刷新页面,参数“零”将被传递。
11. 什么是 JavaScript Cookie?
Cookie 是存储在用户计算机上的小文件。它们用于保存特定于特定客户端和网站的适量数据,并且可以由 Web 服务器或客户端计算机访问。当 cookie 被发明时,它们基本上是包含有关您和您的偏好的信息的小文档。例如,当您选择要查看网站的语言时,该网站会将信息保存在您计算机上称为 cookie 的文档中,下次您访问该网站时,它将能够读取之前保存的 cookie。
12.如何使用 JavaScript 创建 Cookie?
要使用 JavaScript 创建 cookie,您只需将字符串值分配给 document.cookie
对象
document.cookie = "key1 = value1; key2 = value2; expires = date";
13. 如何使用JavaScript读取cookie?
document.cookie
的值用于创建 cookie。每当您想访问 cookie 时,都可以使用该字符串。document.cookie 字符串保留一个用分号分隔的名称 = 值对的列表,其中 name 是 cookie 的名称,值是其字符串值。
14. 如何使用 JavaScript 删除 Cookie?
删除 cookie 比创建或读取 cookie 要容易得多,您只需要设置 expires = “过去的时间”并确保一件事定义了正确的 cookie 路径,除非很少有人允许您删除 cookie。
15. 什么是转义字符和转义()函数?
- 转义字符:如果要使用一些特殊字符(如单引号和双引号、撇号和与号),则此字符是必需的。所有特殊字符在 JavaScript 中都起着重要作用,要忽略它或打印该特殊字符,您可以使用转义字符**反斜杠“\”。**它通常会忽略并表现得像正常角色一样。
// Need escape character
document.write("demo: A Computer Science Portal "for demo" ")
document.write("demo: A Computer Science Portal \"for demo\" ")
- escape() 函数: escape() 函数将字符串作为参数并对其进行编码,以便它可以传输到任何支持 ASCII 字符的网络中的任何计算机。
16. JavaScript 是否有概念级范围?
JavaScript 不是概念级的作用域,在任何函数中声明的变量在函数内部都有作用域。
17. 如何在 JavaScript 中创建通用对象?
要在 JavaScript 中创建通用对象,请使用:
var I = new object();
18. 哪些关键字用于处理异常?
执行 JavaScript 代码时,几乎肯定会发生错误。这些错误可能是由于程序员方面的错误,由于输入错误,或者即使程序的逻辑有问题,也可能发生这些错误。但是所有错误都可以通过使用以下命令来解决。
- try 语句允许您测试代码块以检查错误。
- catch 语句允许您处理错误(如果存在)。
- throw 语句允许您犯自己的错误。
19. 模糊查找功能有什么用?
它用于从所选元素中删除焦点。此方法启动模糊事件,也可以附加到函数以在发生模糊事件时运行。
20.JavaScript 中的 unshift 方法是什么?
它用于在数组的前面插入元素。它就像在数组开头插入元素的push
方法