返回
巧用JavaScript数据类型,应对面试题如鱼得水
前端
2023-09-30 12:50:46
类型定义与基本概念
1. JavaScript 中一共有几种数据类型?
JavaScript 中有七种基本数据类型:
- 布尔类型(Boolean):表示真假值,只有两个值:
true
和false
。 - 数字类型(Number):表示数字,可以是整数或浮点数。
- 字符串类型(String):表示文本,由一串字符组成,可以用单引号或双引号括起来。
- 空类型(Null):表示一个空值,没有具体的值。
- 未定义类型(Undefined):表示一个变量还没有被赋值。
- 对象类型(Object):表示一个复杂的数据结构,可以包含多个属性和方法。
- 符号类型(Symbol):ES6中新增的数据类型,表示一个唯一的标识符。
类型转换与比较
2. 如何将一个字符串转换成数字?
可以使用 Number()
函数将字符串转换成数字。例如:
const num = Number("123");
console.log(num); // 123
3. 如何比较两个不同类型的值?
JavaScript 会自动将不同类型的值转换成相同类型再进行比较。例如:
const num = 123;
const str = "123";
console.log(num == str); // true
4. 如何进行严格相等比较?
使用 ===
运算符可以进行严格相等比较。严格相等比较不仅比较值是否相同,还比较类型是否相同。例如:
const num = 123;
const str = "123";
console.log(num === str); // false
赋值与作用域
5. 什么是变量提升?
变量提升是指在JavaScript中,变量声明会自动提升到函数或块的顶部。这意味着即使变量在函数或块中被声明在使用之前,也可以访问到它。例如:
console.log(x); // undefined
var x = 123;
6. 什么是作用域?
作用域是指变量的可见范围。JavaScript 中有两种作用域:全局作用域和局部作用域。全局变量在整个程序中都可以访问,而局部变量只能在定义它们的函数或块中访问。例如:
var x = 123; // 全局变量
function myFunction() {
var y = 456; // 局部变量
}
console.log(x); // 123
console.log(y); // ReferenceError: y is not defined
通过对这些JavaScript数据类型面试题的深入解析,可以帮助你对JavaScript数据类型有一个更全面的了解,轻松应对面试题的挑战。希望这些内容对你有所帮助,祝你在面试中取得优异的成绩!