当前位置: 首页 > article >正文

零基础入门前端JavaScript 基础语法详解(可用于备赛蓝桥杯Web应用开发)

一、注释注释是代码中不被执行的部分用于说明代码功能。单行注释// 这是单行注释多行注释/* 这是多行注释 */二、变量声明JavaScript 中有三种变量声明方式区别如下关键字作用域变量提升重复声明重新赋值var函数作用域✅✅✅let块级作用域❌❌✅const块级作用域❌❌❌示例var a 1; let b 2; const c 3; // 声明时必须赋值且后续不能修改三、数据类型JavaScript 数据类型分为基本类型和引用类型。1. 基本类型类型说明示例Number数字整数、小数、NaN10,3.14,NaNString字符串单 / 双引号 / 反引号hello,world,模板字符串${a}Boolean布尔值true,falseNull空值nullUndefined未定义变量声明未赋值let x; console.log(x);Symbol唯一值ES6 新增Symbol(id)BigInt大整数ES2020 新增10n2. 引用类型类型说明示例Object对象键值对集合{name: Tom, age: 18}Array数组有序数据集合[1, 2, 3]Function函数function fn() {}3. 类型判断typeof判断基本类型null会返回object是历史遗留问题instanceof判断引用类型如[] instanceof Array返回true四、运算符1. 算术运算符运算符说明示例加1 2-减3 - 1*乘2 * 3/除6 / 2%取余5 % 2自增a/a--自减a--/--a2. 赋值运算符运算符说明示例赋值a 1加后赋值a 2→a a 2-减后赋值a - 1→a a - 13. 比较运算符运算符说明示例相等值相等1 1→true严格相等值和类型都相等1 1→false!不等1 ! 2→true!严格不等1 ! 1→true大于3 2小于1 2大于等于3 3小于等于2 34. 逻辑运算符运算符说明示例与都为 true 才返回 truetrue false→false或一个为 true 就返回 truetruefalse→true!非取反!true→false5. 三元运算符语法条件 ? 表达式1 : 表达式2示例let result 1 2 ? yes : no; // no五、流程控制1. 条件语句if-elselet age 18; if (age 18) { console.log(成年); } else { console.log(未成年); }switchlet day 1; switch (day) { case 1: console.log(周一); break; case 2: console.log(周二); break; default: console.log(其他); }2. 循环语句for循环for (let i 0; i 5; i) { console.log(i); // 0 1 2 3 4 }while循环let i 0; while (i 5) { console.log(i); i; }do-while循环至少执行一次let i 0; do { console.log(i); i; } while (i 5);六、函数函数是可重复使用的代码块。1. 函数声明function add(a, b) { return a b; } add(1, 2); // 32. 函数表达式const multiply function(a, b) { return a * b; }; multiply(2, 3); // 63. 箭头函数ES6 新增const subtract (a, b) a - b; subtract(5, 3); // 24. 参数与返回值默认参数function fn(a 1) {}剩余参数function fn(...args) {}args是数组返回值用return返回无return则返回undefined七、对象对象是键值对的集合键称为 “属性”值可以是任意类型。1. 对象字面量const person { name: Tom, age: 18, sayHi: function() { console.log(Hi); } };2. 属性访问console.log(person.name); // Tom点语法 console.log(person[age]); // 18方括号语法适用于属性名含特殊字符的情况3. 方法调用person.sayHi(); // Hi八、数组数组是有序的数据集合可存储任意类型的数据。1. 数组创建const arr1 [1, 2, 3]; // 字面量方式推荐 const arr2 new Array(1, 2, 3); // 构造函数方式2. 常用方法方法说明示例push末尾添加元素arr.push(4)→[1,2,3,4]pop末尾删除元素arr.pop()→ 返回4数组变为[1,2,3]unshift开头添加元素arr.unshift(0)→[0,1,2,3]shift开头删除元素arr.shift()→ 返回0数组变为[1,2,3]map遍历数组返回新数组arr.map(x x*2)→[2,4,6]filter过滤数组返回符合条件的新数组arr.filter(x x2)→[3]九、基础语法汇总表格分类核心知识点变量声明var函数作用域、let/const块级作用域推荐数据类型基本类型7 种 引用类型Object/Array/Function运算符算术、赋值、比较推荐、逻辑、三元流程控制if-else、switch、for、while、do-while函数声明、表达式、箭头函数、默认参数、剩余参数对象字面量创建、属性访问点 / 方括号、方法调用数组字面量创建、push/pop/map/filter等常用方法

相关文章:

零基础入门前端JavaScript 基础语法详解(可用于备赛蓝桥杯Web应用开发)

一、注释注释是代码中不被执行的部分,用于说明代码功能。单行注释:// 这是单行注释多行注释:/* 这是多行注释 */二、变量声明JavaScript 中有三种变量声明方式,区别如下:关键字作用域变量提升重复声明重新赋值var函数作…...

AVR单片机EEPROM结构化存储库:类型安全+CRC校验

1. 项目概述 AcksenIntEEPROM 是一款专为 8-bit AVR 微控制器(如 ATmega328P、ATmega2560、ATtiny85 等)设计的 Arduino 兼容 EEPROM 数据持久化库。其核心定位并非替代底层 EEPROM.h ,而是提供 类型安全、顺序布局、带校验机制的高级抽象…...

别再空谈AIoT了!用ESP32和TensorFlow Lite Micro,手把手教你做个能识别人脸的智能门铃

从零构建AIoT智能门铃:ESP32-CAM与TensorFlow Lite Micro实战指南 当智能家居设备开始具备"思考"能力,技术魔法就悄然走进了日常生活。想象一下:门铃不仅能响铃,还能认出访客身份,自动向你的手机推送个性化提…...

嵌入式系统集成DeepSeek-OCR-2:资源受限环境优化

嵌入式系统集成DeepSeek-OCR-2:资源受限环境优化 1. 为什么嵌入式场景需要特别对待DeepSeek-OCR-2 在工业现场、智能终端和边缘设备上部署OCR能力,和在数据中心跑模型完全是两回事。我第一次把DeepSeek-OCR-2直接扔进一台ARM Cortex-A53的工控机时&…...

入门前端CSS 媒体查询全解析:从入门到精通,打造完美响应式布局(可用于备赛蓝桥杯Web应用开发)

一、什么是 CSS 媒体查询CSS 媒体查询是 CSS3 引入的核心特性,是对 CSS2 媒体类型的扩展。它的核心能力是先判断当前设备 / 环境的特性,当条件完全匹配时,再执行括号内的 CSS 样式规则。最典型的应用场景,就是根据屏幕宽度调整页面…...

国风美学生成模型v1.0硬件指南:STM32在交互装置中触发模型生成的联动设计

国风美学生成模型v1.0硬件指南:STM32在交互装置中触发模型生成的联动设计 你有没有想过,用毛笔在砚台上轻轻一磨,就能“磨”出一幅由AI创作的国风山水画?或者,在实体竹简上刻下几笔,就能触发AI生成一首古风…...

多模态扩展:OpenClaw整合Qwen3-32B实现截图内容分析

多模态扩展:OpenClaw整合Qwen3-32B实现截图内容分析 1. 为什么需要截图内容分析 在日常工作中,我们经常遇到需要从截图或界面中提取信息并执行后续操作的场景。比如收到一张包含客户联系方式的截图,需要手动输入到CRM系统;或是从…...

GLM-4-9B-Chat-1M长文本处理实战:基于Python的百万字符上下文分析

GLM-4-9B-Chat-1M长文本处理实战:基于Python的百万字符上下文分析 1. 引言 想象一下,你需要分析一本完整的《红楼梦》(约73万字),或者处理一份长达500页的法律合同,传统的大语言模型往往会因为上下文长度…...

OpenClaw模型微调:GLM-4.7-Flash适配专属自动化场景

OpenClaw模型微调:GLM-4.7-Flash适配专属自动化场景 1. 为什么需要专属模型微调 去年夏天,我花了整整三天时间调教家里的扫地机器人——不是因为它坏了,而是想让它学会识别我乱扔的袜子。这个经历让我明白:通用AI就像标准版扫地…...

如何验证BGE-Reranker-v2-m3是否正常工作?测试脚本教程

如何验证BGE-Reranker-v2-m3是否正常工作?测试脚本教程 当你部署好一个AI模型后,最关心的问题往往是:它真的能正常工作吗?今天我们就来解决这个问题。BGE-Reranker-v2-m3作为RAG系统中的关键组件,它的准确性直接影响到…...

手把手教你用LTspice仿真Buck变换器(含波形分析与参数优化)

手把手教你用LTspice仿真Buck变换器(含波形分析与参数优化) 在电力电子领域,Buck变换器作为最经典的降压型DC-DC拓扑,其仿真验证是每个工程师的必修课。LTspice作为一款免费且功能强大的电路仿真工具,能够帮助我们直观…...

Python实战:3种高效方法将TXT转CSV(附完整代码)

Python实战:3种高效方法将TXT转CSV(附完整代码) 在日常数据处理工作中,我们经常需要将文本文件(TXT)转换为更结构化的CSV格式。无论是处理日志文件、数据采集结果还是简单的数据交换,这种转换都…...

MedGemma X-Ray入门指南:中文医学术语理解能力测评(肺炎/肺不张/胸腔积液)

MedGemma X-Ray入门指南:中文医学术语理解能力测评(肺炎/肺不张/胸腔积液) 1. 引言:当AI遇见X光片 想象一下,你手头有一张胸部X光片,需要快速判断是否存在肺炎、肺不张或者胸腔积液。对于非放射科医生来说…...

PP-DocLayoutV3效果对比:传统OCR与智能文档分析的差距

PP-DocLayoutV3效果对比:传统OCR与智能文档分析的差距 你是不是也遇到过这种情况?用传统的OCR工具扫描一份合同或者报告,出来的文字顺序乱七八糟,表格变成了几行看不懂的代码,图片旁边的说明文字也不知道跑哪去了。最…...

嵌入式按钮去抖与多击识别库debounceButton

1. 项目概述debounceButton是一个轻量级、可移植的嵌入式按钮去抖与多击(double-click / triple-click)识别库,专为资源受限的 MCU(如 STM32F0/F1/F4、ESP32、nRF52、RP2040 等)设计。其核心目标并非仅实现硬件电平消抖…...

GTE中文嵌入模型应用场景解析:智能客服FAQ匹配、合同比对、专利查重

GTE中文嵌入模型应用场景解析:智能客服FAQ匹配、合同比对、专利查重 1. 什么是GTE中文文本嵌入模型 你可能已经用过各种AI工具,但有没有想过:当系统说“这两句话意思很接近”,它到底怎么判断的?答案就藏在文本嵌入&a…...

形态学算子实战指南:腐蚀、膨胀、开闭运算在工业检测中的精准应用

1. 工业检测中的形态学基础:从理论到实战 第一次接触形态学算子是在五年前的PCB板缺陷检测项目上。当时产线上有批电路板总是出现微小的短路和断路问题,传统阈值分割怎么调参数都搞不定。直到老工程师扔给我一行HALCON代码:opening_circle(Re…...

Java毕业设计基于SpringBoot架构的酒店后台管理系统

前言 Java基于B/S架构的酒店后台管理系统是一种功能全面、易于维护、跨平台的信息化解决方案。它可以帮助酒店实现高效、便捷的后台管理,提升酒店的运营效率和客户满意度。同时,该系统还具有良好的可扩展性和安全性,可以满足酒店不断变化的业…...

C# ABP vNext 模块化架构实战:从零构建一个可复用的业务模块

1. 从零开始理解ABP vNext模块化架构 第一次接触ABP vNext框架时,我被它强大的模块化能力深深吸引。记得当时接手一个电商系统重构项目,需要同时开发用户管理、商品管理和订单管理三大功能。传统开发方式下,这些功能都挤在一个项目里&#xf…...

Java毕业设计基于SpringBoot+Java Web的生鲜团购销售系统

前言 该系统适用于社区生鲜团购、农产品电商等场景。通过为社区居民提供便捷的生鲜团购服务,满足他们的日常购物需求。同时,通过优化供应链管理和营销策略,降低运营成本和提高销售额。 综上所述,SpringBoot基于JavaWeb的生鲜团购销…...

嵌入式莫尔斯电码编解码库:轻量纯C实现

1. Morse 编码/解码库技术解析:嵌入式系统中的轻量级字符-莫尔斯电码双向转换实现1.1 库定位与工程价值Morse 库是一个专为资源受限嵌入式环境设计的纯 C 语言轻量级编解码组件,其核心功能是实现 ASCII 字符串与莫尔斯电码二进制表示之间的确定性双向映射…...

5步掌握SWE-bench:评估语言模型编程能力的实战指南

5步掌握SWE-bench:评估语言模型编程能力的实战指南 【免费下载链接】SWE-bench SWE-Bench: Can Language Models Resolve Real-world Github Issues? 项目地址: https://gitcode.com/GitHub_Trending/sw/SWE-bench SWE-bench是当前评估语言模型在真实软件工…...

YOLOv5训练数据集报错?一招教你批量转换JPEG到JPG格式(附完整代码)

YOLOv5训练数据集格式兼容性问题全解析:从JPEG到JPG的高效批量转换方案 在计算机视觉项目的实际开发中,数据集准备往往是耗时最长且最容易出错的环节之一。最近在技术社区中,关于YOLOv5训练过程中遇到的ignoring corrupt image/label报错讨论…...

DeepSeek-OCR-2保姆级教程:Docker Compose编排OCR+PostgreSQL元数据服务

DeepSeek-OCR-2保姆级教程:Docker Compose编排OCRPostgreSQL元数据服务 1. 教程概述 1.1 学习目标 通过本教程,你将学会如何使用Docker Compose一键部署DeepSeek-OCR-2完整服务,包括OCR识别引擎、vLLM推理加速、Gradio前端界面以及Postgre…...

AVL-Excite新手必看:5步搞定发动机阀系系统建模(附B站视频教程)

AVL-Excite新手必看:5步搞定发动机阀系系统建模(附B站视频教程) 作为一名刚接触AVL-Excite的工程师或学生,面对复杂的发动机阀系系统建模可能会感到无从下手。本文将带你从零开始,通过五个清晰的步骤,快速…...

嵌入式CronAlarms:MCU上的crontab定时调度框架

1. CronAlarms 库深度解析:嵌入式系统中的 crontab 风格定时任务调度器1.1 设计定位与工程价值CronAlarms 并非传统意义上的硬件驱动库,而是一个面向资源受限嵌入式平台的轻量级、事件驱动型定时任务调度框架。其核心设计哲学是将 Unix 系统中成熟可靠的…...

Qwen-Image入门必看:CUDA12.4+RTX4090D环境下的多模态大模型推理实践

Qwen-Image入门必看:CUDA12.4RTX4090D环境下的多模态大模型推理实践 1. 环境准备与快速部署 1.1 硬件与系统要求 在开始使用Qwen-Image定制镜像前,请确保您的硬件环境满足以下要求: GPU型号:NVIDIA RTX 4090D(24GB…...

cv_resnet101_face-detection_cvpr22papermogface 集成Java Web应用:SpringBoot后端服务实战

cv_resnet101_face-detection_cvpr22papermogface 集成Java Web应用:SpringBoot后端服务实战 1. 引言 想象一下,一个办公楼的门禁系统,每天上下班高峰期,员工排着长队等待刷卡或指纹验证。或者一个社区安防中心,保安…...

英飞凌霍尔开关C++硬件抽象库设计与多平台实践

1. 项目概述Infineon Hall-Switch C库是面向嵌入式磁传感应用的轻量级硬件抽象层(HAL)实现,专为英飞凌单霍尔效应开关传感器家族设计。该库不依赖特定操作系统或复杂中间件,以纯C11标准编写,核心代码无动态内存分配、无…...

教师必备!这款免费Word插件让你的教案制作效率提升300%(附安装包)

教师必备!这款免费Word插件让你的教案制作效率提升300% 作为一名教师,每天面对最多的可能就是教案和试卷的制作了。从知识点整理到题目编排,从答案标注到格式调整,这些看似简单的工作往往要耗费大量时间。特别是当我们需要反复修改…...