50个JavaScript面试题及笔试题题及解析
- 初级阶段
-
- 1、 java和javascript有什么区别?
- 2、什么是JavaScript?
- 3、JavaScript支持哪些数据类型?
- 4、JavaScript有哪些特征?
- 5、JavaScript是区分大小写的语言吗?
- 6、JavaScript的优点是什么?
- 7、如何在JavaScript中创建对象?
- 8、如何在JavaScript中创建数组?
- 9、在JavaScript中什么是命名函数,它如何创建?
- 10、可以将匿名函数分配给变量,然后将其作为参数传递给另一个函数吗?
- 11、JavaScript中的对象参数是什么?如何获取传递给函数的参数类型?
- 12、JavaScript中变量的作用域是什么?
- 13、JavaScript中“ this”的作用是什么?
- 14、什么是回调?
- 15、什么是闭包?
- 16、JavaScript有哪些内置方法它们的返回值是什么?
- 17、JavaScript中的变量命名约定是什么?
- 18、typeof运算符如何工作?
- 19、如何使用JavaScript创建Cookie?
- 20、如何使用JavaScript读取Cookie?
- 21、如何使用JavaScript删除Cookie?
- 中级阶段
-
- 22、Attributes and Property有什么区别?
- 23、说说可以在JavaScript代码中访问HTML元素的不同方法?
- 24、HTML文件可以以多种方式包含JavaScript代码吗?
- 25、在JavaScript中定义变量的方式有哪些?
- 26、什么是类型语言?
- 27、Local storage 和 Session storage的区别?
- 28、 运算符`==`和`===`有什么区别?
- 29、null和undefined有什么区别?
- 30、未声明和未定义之间有什么区别?
- 31、JavaScript常用框架名称?
- 32、JavaScript中的window和document有什么区别?
- 33、innerHTML和innerText有什么区别?
- 34、JavaScript的事件冒泡是什么?
- 35、JavaScript中的NaN是什么?
- 36、JavaScript基本类型/对象类型如何在函数中传递?
- 37、如何在JavaScript中将任何基数的字符串转换为整数?
- 38、2+5+“3”的结果为?
- 39、什么是exports和imports?
- 高级阶段
初级阶段
1、 java和javascript有什么区别?
Java
- java是一种OOP编程语言
- 它的创建和应用程序运行在在虚拟机或者浏览器中
- Java代码需要编译
JavaScript
- JavaScript是描述性脚本语言
- 代码仅在浏览器中运行
- JavaScript代码全部为文本形式
2、什么是JavaScript?
JavaScript是一种轻量级的解释性的编程语言,具有面向对象的功能,使您可以交互性构建到其他静态HTML页面中。该语言的通用核心已经嵌入到Netscape,Internet Explorer 和其他Web浏览器中
3、JavaScript支持哪些数据类型?
- Null
- Undefined
- Boolean
- String
- Symbol
- Number
- Object
4、JavaScript有哪些特征?
- 它是一种轻量级的解释性语言。
- 它是专为创建以网络为中心的应用程序而设计的。
- 它是一种开放和跨平台的脚本语言。
5、JavaScript是区分大小写的语言吗?
是的,JavaScript是区分大小写的语言。关键字,变量,函数名称和任何其他标识符必须始终以一致的字母输入。
6、JavaScript的优点是什么?
- 更少的服务器交互—您可以在将页面发送给服务器之前验证用户输入。这样可以节省服务器流量,意味着服务器上的负载更少。
- 立即向访问者反馈—他们不必等待页面重新加载就可以查看是否忘记了输入内容。
- 增强的交互性—您可以创建界面,当用户将鼠标悬停在界面上或通过键盘激活界面时,界面会做出反应。
- 丰富的界面—您可以使用JavaScript包含诸如拖放组件和滑动模块之类的项目,向您的网站访问者提供丰富的界面效果。
7、如何在JavaScript中创建对象?
JavaScript很好地支持对象概念。您可以使用对象字面量来创建对象,如下所示:
var obj = {
name:"管乐明",
age:'22'
};
8、如何在JavaScript中创建数组?
您可以使用数组字面量来定义数组,如下所示:
var a = [];
var b = [1,2,3];
9、在JavaScript中什么是命名函数,它如何创建?
命名函数在定义后便立即声明名称。可以使用function关键字将其定义为:
function uname(){
return 1;
}
10、可以将匿名函数分配给变量,然后将其作为参数传递给另一个函数吗?
是可以的!匿名函数可以分配给变量,也可以将其作为参数传递给另一个函数。
11、JavaScript中的对象参数是什么?如何获取传递给函数的参数类型?
JavaScript变量参数表示传递给函数的参数。使用typeof运算符可以获取传递给函数的参数类型。
例如:
function fn(x){
console.log(typeof x, arguments.length);
}
fn(); //==> "undefined", 0
fn(7); //==> "number", 1
fn("1", "2", "3"); //==> "string", 3
12、JavaScript中变量的作用域是什么?
一个变量的范围是区域内的应用程序所定义,JavaScript变量只有两个作用域。
- 全局变量-全局变量具有全局作用域,这意味着它在JavaScript代码中的任何位置都是可见的。
- 局部变量-局部变量仅在定义它的函数中可见。
13、JavaScript中“ this”的作用是什么?
JavaScript的this关键字引用了它所属的对象。根据使用位置的不同,它具有不同的值。在方法中,这是指所有者对象,在函数中,是指全局对象。
14、什么是回调?
回调是指一个普通的JavaScript函数传递一些方法作为参数或可选项。一个函数要等执行另一项函数完成后才执行,因此而得名“回调”。在JavaScript中,函数是对象。因此