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

前端:JavaScript基础

一、基本语法

(一)编写JS的位置

1、HTML代码行内

2、script标签中

3、外部的script文件:需要通过script元素的src属性引入js文件

(二)JS编写注意事项

1、script不能写成单标签

2、可省略script标签中的type="text/javascript";属性(因为JS是所有现代浏览器以及HTML5中默认的脚本语言)

3、加载顺序:JS默认遵循HTML文档自上而下的加载顺序

4、JS严格区分大小写

(三)JS交互

1、alert():接受1个参数,使用弹窗查看运行结果

2、console.log():可接受多个参数,在浏览器控制台查看运行结果

3、document.write():接受多个字符串,在浏览器页面查看运行结果

4、prompt:接受1个参数,在浏览器接受用户输入结果

(四)JS语句和分号

1、语句:向浏览器发出的指令,表达1个操作或行为。

2、分号:因人(公司))

(五)JS注释

1、单行注释://

2、多行注释:/**/

3、文档注释:/** ******* */

(六)变量

1、是什么:存放数值的容器且数值可变。

2、命名规则:

(1)首字符必须是字母、下划线(_)或 $ 符号。
(2)其他字符可以是字母、下划线(_)、$ 符号 或 数字。
(3)不能是JavaScript的关键字或保留字,例如 varfunctionlet 等。
(4)变量名严格区分大小写

3、命名规范:

(1)多个单词使用驼峰标识
(2)变量名语义化(见名知意)
(3)英语单词(尽量不要写拼音)

4、注意事项:

(1)变量未声明直接使用则报错
(2)变量声明了但未赋值,则结果默认是undefined
(3)变量未使用var声明但赋值了,那该变量直接被添加到window对象

eg:age = 18 ;

(七)数据类型

1、Number

2、String

3、Boolean

4、Undefined

5、Null

6、Object

7、BigInt

8、Symbol

(八)typeof操作符

1、number:数值

2、string:字符串

3、boolean:布尔值

4、undefined:未定义

5、object:对象或null

6、function:函数

7、symbol:符号

(九)补充知识

1、浏览器内核、JS引擎、JS代码运行之间的关系是什么?

答:(1)是什么:
  • 浏览器内核(Rendering Engine):又叫渲染引擎,负责将网页的代码(HTML, CSS, JavaScript)“转化”成你肉眼可见的、可交互的页面。eg:WebKit、Blink、Gecko 
  •  JavaScript引擎(JS Engine):它是浏览器内核中的一个专门负责处理JavaScript代码的核心子模块。专门负责读取、编译(或解释)和执行JavaScript代码。eg:V8、JavaScriptCore、SpiderMonkey
  • JavaScript代码:你写的程序指令。它是被动的,需要被JS引擎这个“大脑”来解析和执行,从而驱动网页产生动态效果和交互逻辑。

(2)工作流程:

  • 浏览器内核(Rendering Engine):解析HTML构建DOM树-》解析CSS构建CSSOM树-》合并成渲染树-》布局重排(Layout)-》绘制重绘(Painting)
  • JavaScript引擎(JS Engine):读取JS代码(Parsing)-》编译(Compilation)成为可执行的机器码(字节码)-》执行(Execution)机器码CPU开始干活-》优化(Optimization)编译结果,让代码跑得更快
  • JavaScript代码:它是被动的,需要被JS引擎这个“大脑”来解析和执行,从而驱动网页产生动态效果和交互逻辑。
(3)三者关系
  • 你编写JavaScript代码,并通过<script>标签引入网页
  • 浏览器内核网络模块先加载这些代码文本
  • 内核将代码交给它的JS引擎部门处理
  • JS引擎将代码编译成机器码并执行
  • 执行过程中,JS代码可能会通过DOM API指令内核渲染引擎:“把这个元素的颜色改成红色!”
  • 渲染引擎接收到指令,重新进行样式计算、布局或绘制,更新页面显示
  • 一个动态的、可交互的网页就这样诞生了
(4)核心图解:

(5)总结归纳:
概念角色职责比喻
浏览器内核综合管理者加载资源、解析、渲染、布局、绘制整个页面整个手机(硬件+操作系统)
JS引擎专业执行者专门编译、优化、执行JavaScript代码手机里的CPU/大脑
JS代码指令被动的文本,需要被引擎执行才能生效你在手机上运行的一个APP

2、机器语言、汇编语言、高级语言分别是什么?它们之间有什么关系?

答:(1)机器语言 (Machine Language) - “用开关指挥”:CPU能直接理解和执行的二进制指令(0和1的序列)。每一串0和1控制着CPU底层的一个特定操作(比如从内存某个位置取数、做加法、存结果)。
(2)汇编语言 (Assembly Language) - “用代号指挥”:机器语言的“助记符”形式。用一些简单的英文单词缩写(称为“助记符”)来代替那一串串二进制码,让人类稍微好理解一点。

eg:CPU寄存器、内存地址

(3)高级语言 (High-Level Language) - “说人话指挥”:更接近人类自然语言(尤其是英语)和数学公式的编程语言。它们完全屏蔽了复杂的硬件细节。

eg:Python, Java, JavaScript, C++, Go, Swift等

语言层次可能的表现形式可读性
机器语言10111000 00000001 00000000
10111100 00000010 00000000
00000000
天书

汇编语言

MOV AX, 1
MOV BX, 2
ADD AX, BX
勉强能猜
高级语言result = 1 + 2一目了然


文章转载自:

http://6NEiWMX9.tsLwz.cn
http://CB6wbW3t.tsLwz.cn
http://tWDritDt.tsLwz.cn
http://SeoWcgbk.tsLwz.cn
http://TOOnI68T.tsLwz.cn
http://nWxrdL3N.tsLwz.cn
http://I9vLN2FV.tsLwz.cn
http://BUjPeGdH.tsLwz.cn
http://E7WZCHpu.tsLwz.cn
http://R3LLQ3RB.tsLwz.cn
http://iPM0jvc3.tsLwz.cn
http://najjbkYg.tsLwz.cn
http://OIZfwtQA.tsLwz.cn
http://PsCIzLzd.tsLwz.cn
http://ut8JBeYD.tsLwz.cn
http://uNqqMeWL.tsLwz.cn
http://C04ITEuP.tsLwz.cn
http://YPKRwWAq.tsLwz.cn
http://6uL8BnyF.tsLwz.cn
http://cJzKT9Rp.tsLwz.cn
http://EBZD0DC7.tsLwz.cn
http://PpiosZ6K.tsLwz.cn
http://6lzuknl1.tsLwz.cn
http://2QC8WEql.tsLwz.cn
http://01rpCY4l.tsLwz.cn
http://H5ill7wE.tsLwz.cn
http://5yHs2eU2.tsLwz.cn
http://rTcoUOuF.tsLwz.cn
http://nVof33xy.tsLwz.cn
http://BmLGTN4x.tsLwz.cn
http://www.dtcms.com/a/371897.html

相关文章:

  • 知识扩展——探究当代分布式数据库
  • 性能剖析工具火焰图介绍与实战demo
  • Linux:malloc背后的实现细节
  • Windows HDR 和 Nvidia HDR 关系
  • HarmonyOS应用开发:三层工程架构
  • Python学习——安装配置python环境+入门
  • IP校验和算法:从网络协议到SIMD深度优化
  • CentOS7 Hive2.3.8 安装图文教程
  • 如何利用 ChatGPT 辅助写作
  • 《从iptables到ipvs:云原生网络转发的性能拐点突破》
  • centos系统apache支持php配置
  • PyQt数字转大写金额GUI工具开发及财务规范实现
  • 家长沉迷游戏刷剧对儿童学习体验的影响:儿童教育心理学视角分析
  • 环状肽药物发现新路径:DNA 编码文库技术(DELT)的突破与挑战
  • 基于蚁群算法的量子电路调度研究(Matlab平台)
  • Photoshop图层间的关系
  • Axure RP 9 最新版安装包+安装步骤Win系统适用(附安装包)
  • 【PS2025全网最新版】稳定版PS2025保姆级下载安装详细图文教程(附安装包)(Adobe Photoshop)
  • FLINK:水位线的介绍
  • MySQL高级功能:窗口函数
  • 换手率及使用Python获取换手率数据
  • 炉米Lumi:字节跳动推出的AI图像模型分享社区
  • 计算机网络学习(六、应用层)
  • JavaSE 数组从入门到面试全解析
  • 游戏中的设计模式——第二篇 单例模式
  • 【论文阅读】自我进化的AI智能体综述
  • 系统分析师考试备考全面解析
  • 现代C++:C++和现代C++
  • 开始 ComfyUI 的 AI 绘图之旅-图生图之局部重绘(三)
  • 函数合集(1)