目录

一、JavaScript 是什么?为什么要学?

二、JS 基本语法入门

2.1 书写方式

2.2 输入输出语句

2.3 变量与命名规范

三、数据类型:JS 的 “数据分类”

3.1 简单数据类型

3.2 数据类型转换

四、运算符:JS 的 “计算工具”

4.1 算术运算符

4.2 递增 / 递减运算符

4.3 比较与逻辑运算符

4.4 运算符优先级

五、流程控制:JS 的 “执行逻辑”

5.1 分支结构(条件判断)

5.2 循环结构(重复执行)

六、数组与函数:JS 的 “数据容器” 与 “代码复用”

6.1 数组(存储多个数据)

6.2 函数(复用代码块)

总结


一、JavaScript 是什么?为什么要学?

JavaScript(简称 JS)是世界上最流行的客户端脚本语言,无需编译,由浏览器逐行解释执行。它最初由布兰登・艾奇用 10 天设计,从 LiveScript 更名为 JavaScript,如今不仅能用于网页开发,还可通过 Node.js 实现服务端编程、桌面应用(Electron)、App 开发等多场景应用。

作为前端开发的 “三驾马车” 之一,HTML 负责页面结构(身体),CSS 负责样式(穿衣化妆),而 JavaScript 负责交互逻辑(动作)—— 没有 JS,网页只是静态的 “图片”,有了 JS 才能实现表单校验、网页特效、动态数据展示等核心功能。

二、JS 基本语法入门

2.1 书写方式

JS 有三种书写形式,根据场景选择:

  1. 行内式:写在 HTML 标签的事件属性中(如 onclick),适合少量代码。

    html

    预览

    <input type="button" value="点我试试" onclick="alert('Hello World')" />
    
    注意:HTML 用双引号,JS 用单引号,避免嵌套冲突。
  2. 内嵌式:写在<script>标签中,适合学习和少量代码场景。

    html

    预览

    <script>
      alert('Hello World~!');
    </script>
    
  3. 外部式:独立为.js文件,通过<script src="路径">引入,适合代码量较大的项目,利于复用和维护。

    html

    预览

    <script src="my.js"></script>
    
    注意:引入外部 JS 的<script>标签中间不能写代码。

2.2 输入输出语句

JS 提供 3 种常用交互方式,直接对接浏览器:

方法 说明 示例
alert(msg) 弹出警示框 alert('这是提示')
console.log(msg) 控制台打印(调试用) console.log('调试信息')
prompt(info) 弹出输入框,获取用户输入 var name = prompt('请输入姓名')

2.3 变量与命名规范

变量是存放数据的 “容器”,本质是内存中的一块空间。

  1. 变量使用步骤

    javascript

    运行

    // 1. 声明变量(申请空间)
    var age;
    // 2. 赋值(存入数据)
    age = 18;
    // 简写:声明+赋值
    var name = "张三";
    
  2. 命名规范(必须遵守,否则报错或不规范):
    • 由字母、数字、下划线_、美元符$组成
    • 不能以数字开头,不能是关键字(如 var、for)
    • 严格区分大小写(age 和 Age 是两个变量)
    • 遵循驼峰命名法:首字母小写,后续单词首字母大写(如 myFirstName)
    • 变量名要有意义(避免用 a、b、c 等)

三、数据类型:JS 的 “数据分类”

JS 是弱类型语言,变量类型无需提前声明,运行时自动确定。数据类型分为简单类型和复杂类型,重点掌握简单类型:

3.1 简单数据类型

类型 说明 默认值 示例
Number 数字(整数 / 小数) 0 var num = 213.14
String 字符串(必须带引号) "" var str = "Hello"'JS'
Boolean 布尔值(真 / 假) false var isOk = true
Undefined 声明未赋值的变量 undefined var x;
Null 空值(后续对象学习常用) null var obj = null

3.2 数据类型转换

开发中经常需要转换类型,重点掌握以下 3 种场景:

  1. 转字符串

    javascript

    运行

    var num = 123;
    // 方式1:toString()
    num.toString(); 
    // 方式2:String()强制转换
    String(num);
    // 方式3:加号拼接(最常用)
    num + "号"; // 结果:"123号"
    
  2. 转数字型(重点)

    javascript

    运行

    var str = "123";
    // 方式1:parseInt() 转整数
    parseInt(str); // 123
    // 方式2:parseFloat() 转小数
    parseFloat("123.45"); // 123.45
    // 方式3:Number() 强制转换
    Number(str); // 123
    // 方式4:隐式转换(利用算术运算)
    str - 0; // 123
    
  3. 转布尔型
    • 空值(""、0、NaN、null、undefined)转布尔值为false
    • 其余值均转为true

    javascript

    运行

    Boolean(""); // false
    Boolean(123); // true
    

四、运算符:JS 的 “计算工具”

运算符用于实现赋值、计算、比较等功能,常用分类如下:

4.1 算术运算符

符号 说明 示例
+ - * / 加、减、乘、除 10+20=30
% 取余数(取模) 9%2=1(判断奇偶常用)

4.2 递增 / 递减运算符

适合反复加 1 或减 1 的场景,分前置和后置:

  • 前置++num(先自加,后返回值)

    javascript

    运行

    var num = 10;
    console.log(++num); // 11
    
  • 后置num++(先返回原值,后自加)

    javascript

    运行

    var num = 10;
    console.log(num++); // 10(输出后num变为11)
    

4.3 比较与逻辑运算符

  • 比较运算符:返回布尔值(true/false),注意==(值相等)和===(值和类型都相等)的区别:

    javascript

    运行

    37 == "37"; // true(隐式转换类型)
    37 === "37"; // false(类型不同)
    
  • 逻辑运算符:用于多条件判断
    符号 说明 示例
    && 逻辑与(都真才真) 2>1 && 3>2 // true
    逻辑或(一真就真) `2>3 1>0 // true`
    ! 逻辑非(取反) !true // false

4.4 运算符优先级

  • 小括号()优先级最高
  • 算术运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符
  • 示例:3 + 4 * 2 > 10 && 5 - 1 == 4 // false

五、流程控制:JS 的 “执行逻辑”

流程控制决定代码执行顺序,分为顺序结构、分支结构、循环结构。

5.1 分支结构(条件判断)

  1. if 语句(单条件):

    javascript

    运行

    var age = 18;
    if (age >= 18) {
      console.log("成年");
    }
    
  2. if-else 语句(双条件):

    javascript

    运行

    if (age >= 18) {
      console.log("成年");
    } else {
      console.log("未成年");
    }
    
  3. switch 语句(多条件匹配):

    javascript

    运行

    var fruit = "苹果";
    switch (fruit) {
      case "苹果":
        console.log("5元/斤");
        break; // 必须加,否则继续执行下一个case
      case "香蕉":
        console.log("3元/斤");
        break;
      default:
        console.log("无此水果");
    }
    

5.2 循环结构(重复执行)

  1. for 循环(最常用,适合已知次数):

    javascript

    运行

    // 语法:初始化变量; 条件; 操作表达式
    for (var i = 0; i < 10; i++) {
      console.log("第" + (i+1) + "次循环");
    }
    
    案例:打印九九乘法表

    javascript

    运行

    for (var i = 1; i <= 9; i++) {
      for (var j = 1; j <= i; j++) {
        document.write(j + "×" + i + "=" + i*j + " ");
      }
      document.write("<br>");
    }
    
  2. while 循环(适合未知次数):

    javascript

    运行

    var i = 1;
    while (i <= 10) {
      console.log(i);
      i++; // 必须有退出条件,否则死循环
    }
    
  3. break 与 continue
    • break:跳出整个循环
    • continue:跳出本次循环,继续下一次

六、数组与函数:JS 的 “数据容器” 与 “代码复用”

6.1 数组(存储多个数据)

  1. 创建数组

    javascript

    运行

    // 方式1:数组字面量(推荐)
    var arr = ["张三", 18, true];
    // 方式2:new Array()
    var arr = new Array(3); // 长度为3的空数组
    
  2. 访问与遍历数组
    • 数组索引从 0 开始:arr[0](第一个元素)
    • 遍历(常用 for 循环):

      javascript

      运行

      var arr = ["红", "绿", "蓝"];
      for (var i = 0; i < arr.length; i++) {
        console.log(arr[i]);
      }
      
  3. 新增元素

    javascript

    运行

    arr[arr.length] = "黄"; // 尾部新增
    

6.2 函数(复用代码块)

  1. 函数声明与调用

    javascript

    运行

    // 声明函数
    function getSum() {
      var sum = 0;
      for (var i = 1; i <= 100; i++) {
        sum += i;
      }
      console.log(sum);
    }
    // 调用函数(必须调用才执行)
    getSum();
    
  2. 函数参数

    javascript

    运行

    // 带形参的函数
    function getSum(a, b) {
      console.log(a + b);
    }
    // 传实参
    getSum(10, 20); // 30
    
  3. 返回值(return)

    javascript

    运行

    function getSum(a, b) {
      return a + b; // 返回结果,终止函数
    }
    var result = getSum(10, 20);
    console.log(result); // 30
    
  4. 作用域
    • 全局作用域:函数外声明的变量,整个页面可用
    • 局部作用域:函数内声明的变量,仅函数内可用
    • 注意:JS 在 ES6 前无块级作用域(if/for 循环内的 var 变量是全局的)

总结

上篇我们掌握了 JavaScript 的核心基础:从书写方式、变量数据类型,到运算符、流程控制,再到数组与函数。这些是 JS 的 “内功心法”,无论后续学习 DOM/BOM 还是框架,都离不开这些基础。

下篇将进入实战阶段,学习 DOM 文档操作、事件处理、BOM 浏览器交互等核心应用,让静态页面 “动” 起来!关注我,下篇不见不散~

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐