微信登录

JavaScript 基础复习 - 语法基础 - 变量、数据类型等

JavaScript 基础复习 - 语法基础 - 变量、数据类型等

引言

JavaScript 作为一门广泛应用于前端和后端(借助 Node.js)开发的编程语言,其基础语法是构建复杂应用的基石。本文将带大家复习 JavaScript 中的变量、数据类型等基础语法知识,同时会结合 Node.js 环境给出演示代码。

变量

在 JavaScript 中,变量是用于存储数据的容器。在 ES6 之前,我们使用 var 关键字来声明变量,而 ES6 引入了 letconst 关键字,它们在块级作用域方面有着更好的表现。

var 关键字

var 声明的变量没有块级作用域,只有函数作用域和全局作用域。

  1. // 使用 var 声明变量
  2. function testVar() {
  3. if (true) {
  4. var x = 10;
  5. }
  6. console.log(x); // 输出 10,因为 var 没有块级作用域
  7. }
  8. testVar();

let 关键字

let 声明的变量具有块级作用域,只能在声明它的块内访问。

  1. // 使用 let 声明变量
  2. function testLet() {
  3. if (true) {
  4. let y = 20;
  5. console.log(y); // 输出 20
  6. }
  7. // console.log(y); // 报错,y 在此处不可访问,因为 let 有块级作用域
  8. }
  9. testLet();

const 关键字

const 用于声明常量,一旦声明必须赋值,且不能再重新赋值。同样具有块级作用域。

  1. // 使用 const 声明常量
  2. const PI = 3.14;
  3. // PI = 3.1415; // 报错,不能重新赋值
  4. if (true) {
  5. const MAX = 100;
  6. console.log(MAX); // 输出 100
  7. }
  8. // console.log(MAX); // 报错,MAX 在此处不可访问,因为 const 有块级作用域

数据类型

JavaScript 中的数据类型分为基本数据类型和引用数据类型。

基本数据类型

基本数据类型包括 NumberStringBooleanNullUndefinedSymbol(ES6 新增)。

数据类型 描述 示例
Number 表示数字,包括整数和浮点数 let num = 10; let floatNum = 3.14;
String 表示文本,用单引号或双引号包裹 let str = 'Hello, World!';
Boolean 表示布尔值,只有 truefalse 两个值 let isTrue = true;
Null 表示一个空对象指针,只有一个值 null let emptyObj = null;
Undefined 表示变量已声明但未赋值,或者函数没有返回值 let undefinedVar; console.log(undefinedVar); // 输出 undefined
Symbol 表示独一无二的值 let sym = Symbol('description');
  1. // 基本数据类型示例
  2. let num = 42;
  3. let str = "Hello";
  4. let bool = false;
  5. let empty = null;
  6. let undef;
  7. let sym = Symbol('unique');
  8. console.log(typeof num); // 输出 'number'
  9. console.log(typeof str); // 输出 'string'
  10. console.log(typeof bool); // 输出 'boolean'
  11. console.log(typeof empty); // 输出 'object'(历史遗留问题)
  12. console.log(typeof undef); // 输出 'undefined'
  13. console.log(typeof sym); // 输出 'symbol'

引用数据类型

引用数据类型主要是 Object,包括普通对象、数组、函数等。引用数据类型存储的是对象的引用,而不是对象本身。

  1. // 普通对象
  2. let person = {
  3. name: 'John',
  4. age: 30
  5. };
  6. // 数组
  7. let numbers = [1, 2, 3, 4, 5];
  8. // 函数
  9. function add(a, b) {
  10. return a + b;
  11. }
  12. console.log(typeof person); // 输出 'object'
  13. console.log(typeof numbers); // 输出 'object'
  14. console.log(typeof add); // 输出 'function'

类型转换

在 JavaScript 中,类型转换分为隐式类型转换和显式类型转换。

隐式类型转换

隐式类型转换是在某些操作中自动发生的类型转换。

  1. // 隐式类型转换示例
  2. let num1 = 10;
  3. let str1 = "20";
  4. let result = num1 + str1;
  5. console.log(result); // 输出 '1020',因为 + 运算符在有字符串参与时会进行字符串拼接

显式类型转换

显式类型转换是通过特定的函数来实现的。

  1. // 显式类型转换示例
  2. let numStr = "15";
  3. let num2 = parseInt(numStr); // 将字符串转换为整数
  4. console.log(num2); // 输出 15
  5. let boolStr = "true";
  6. let bool2 = Boolean(boolStr); // 将字符串转换为布尔值
  7. console.log(bool2); // 输出 true

总结

通过本文的复习,我们了解了 JavaScript 中变量的声明方式(varletconst),掌握了基本数据类型和引用数据类型的特点,以及类型转换的方法。这些基础知识是进一步学习 JavaScript 的关键,希望大家能够熟练掌握。在 Node.js 环境中,我们可以通过 node 文件名.js 来运行上述代码进行验证。

希望这篇文章能帮助你巩固 JavaScript 的基础语法知识,在后续的开发中更加得心应手!

JavaScript 基础复习 - 语法基础 - 变量、数据类型等