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

学习日记-JS+DOM-day54-9.12

1.javascript基本说明

知识点

核心内容

重点

JavaScript基础

控制HTML内容与属性,实现动态行为(如开灯/关灯效果)

src属性路径修正(./与../的区别)

前端三要素

HTML(内容)、CSS(样式)、JavaScript(行为)的定位与分工

JavaScript的核心作用(数据验证、交互逻辑)

官方文档使用

W3C离线手册与在线文档的查找方法(JavaScript章节)

快捷键操作(Ctrl+滚轮缩放页面)

开发环境配置

IDEA工程创建与目录结构规范(路径斜杠问题)

工程路径未正确指定的常见错误

2.javascript弱类型特点

知识点

核心内容

重点

解释型语言特性

JavaScript是逐条解释执行的脚本语言,无需编译生成中间文件(如Java的.class文件)

与编译型语言(Java/C++)的执行机制差异

弱类型系统

变量数据类型可动态变化(如var name从字符串变为数值),无需显式声明类型

强类型语言(Java)开发者需适应类型灵活性

运行环境依赖

依赖浏览器解释执行(如Chrome/IE),跨平台但受环境差异影响

浏览器缓存可能导致调试结果不一致(需刷新验证)

代码书写规范

语句末尾分号可选(但建议统一添加),代码可写在<script>标签内

分号省略风险(如京东等企业规范强制使用)

类型检测方法

使用typeof动态获取变量类型(如typeof name输出"string"或"number")

类型隐式转换(如123 + "ABC"拼接为字符串)

输出调试方式

alert()弹窗显示 / console.log()控制台输出(支持log/info/error等多级别)

调试工具选择(弹窗会阻塞代码执行)

3.js使用方式(1) 在script中写

知识点

核心内容

重点

JavaScript使用方式

script标签嵌入JS代码:可在head或body中嵌入,执行顺序从上到下

执行顺序与位置关系

代码书写规范

console.log输出语句分号可选,建议放在head部分

分号使用规范

script标签位置

标准建议放在head中,但实际开发中body内也可使用

最佳实践与标准差异

代码执行特点

JavaScript按书写顺序执行,与Vue等框架有相似特点

执行机制理解

4.js使用方式(2)  在script引入js

知识点

核心内容

重点

JS代码引入方式

通过<script>标签的src属性引入外部JS文件(如<script src="./js/my.js">)

路径格式(相对路径./js/my.js vs 绝对路径)

JS代码内嵌方式

直接在HTML文件中用<script>标签编写JS代码(如<script>alert("你好")</script>)

Type属性可选性(type="text/javascript"可省略)

混用规则

两种JS使用方式不可混用(仅生效先加载的代码)

执行顺序优先级(引入文件优先于内嵌代码)

代码复用技巧

通过引入外部JS文件实现代码复用(类似CSS的<link>引入)

文件命名规范(如.js后缀必须明确)

弱类型语言特性

JS不报错但仅执行一种方式(体现弱类型语言的松散性)

调试建议(避免混用以防逻辑混淆)

5.如何在浏览器查看错误信息

知识点

核心内容

重点

JavaScript调试方法

通过浏览器控制台(Ctrl+Shift+I)查看错误信息,定位错误行号及类型(如Uncaught ReferenceError)

错误类型区分(语法错误 vs 运行时错误);

浏览器差异(火狐与谷歌控制台界面差异)

错误定位技巧

点击控制台报错信息直接跳转到源码错误行; 关键快捷键:Ctrl+Shift+I(打开调试器)

快速定位依赖调试器熟练度; 新手易忽略控制台报错行号提示

开发实战建议

工作中需熟练掌握调试技能,避免低效排查(如逐行检查); 

调试效率对比

直接定位(高效) vs 人工排查(低效)

浏览器兼容性

火狐与谷歌浏览器控制台功能对比(错误提示格式、定位方式一致)

操作路径差异: 部分浏览器需通过菜单进入调试模式

6.js变量定义的方式

知识点

核心内容

重点

变量基本概念

变量是存储数据的容器,通过变量名访问数据空间

内存位置差异(浏览器内核 vs JVM)

JavaScript变量特性

弱类型语言:

- 声明松散(var可省略);

- 动态类型转换;

- 无char类型

与JAVA核心差异:

1. 类型系统松散;

2. 变量声明非强制;

3. 字符统一作字符串处理

变量定义格式

var name = value 或直接 name = value

未声明直接赋值的隐式全局变量问题

类型检测演示

typeof 'a' 返回 string(非char)

单一字符也视为字符串类型

语言范式强调

需跳出JAVA思维定式:

- 无严格类型约束;

- 语法规则弹性化

典型认知冲突点:

1. 类型系统差异;

2. 语法严谨度差异

7.js的数据类型

知识点

核心内容

重点

JavaScript数据类型

松散类型语言,主要包含:number(统一数值类型)、string、object、boolean、function

整数/小数均归为number(与传统强类型语言如Java的int/float区分)

特殊值处理

undefined、null等需注意的默认值

初学者易混淆类型判定(如typeof null返回object)

强类型与弱类型对比

Java需严格声明类型(如float/double),JavaScript仅需number

类型隐式转换规则是常见陷阱

8.js特殊值

知识点

核心内容

重点

JavaScript特殊值

undefined(未赋值变量使用时的默认值)

与Java语言的区别(Java会直接报错)

null(空值)

与undefined的语义区别

NaN(Not a Number)

类型转换失败时的特殊返回值(如数字运算包含非数字字符)

教学特色

通过实时代码演示讲解概念

对比Java语言的严格性突出JS的松散特性

强调概念清晰度和实际应用场景

typeof NaN返回值问题

建议

需要区分三种特殊值的产生场景

易混淆点:null == undefined为true但null === undefined为false

9.String的注意事项

知识点

核心内容

重点

字符串数据类型

字符串可以用双引号或单引号括起来(如 "a book" 或 'ABC'),语法较松散

单/双引号混用合法性('ABC' 和 "ABC" 均有效)

空串与字符表示

空串和单字符均可使用双引号或单引号(如 "" 或 '')

字符与字符串的界限模糊(如 'a' 既可表示字符也可表示单字符字符串)

运算符(未展开)

直播中提及但未详细讲解,可能涉及基础运算或语言特性

运算符优先级或特殊语法(需后续补充)

10.js运算符(1)

知识点

核心内容

重点

算术运算符

加减乘除、求余、自增/自减(与JAVA语法一致)

无需特别强调,基础操作

赋值运算符

=、+=、-=、*=、/=、%=(与JAVA一致)

x += y 等价于 x = x + y

关系运算符

==、!=、>、<、>=、<=(常规比较)

特殊: ===(全等,要求值和类型一致)

== vs ===:

- "100" == 100 → true(值相等)

- "100" === 100 → false(类型不同)

逻辑运算符

未展开讲解,需后续补充(文中提到“要稍微强调”)

待明确(如 &&、||、! 的短路特性)

11.js运算符(2)

知识点

核心内容

重点

逻辑运算符基础

介绍逻辑与(AND)、逻辑或(OR)、逻辑非(NOT)三种基本运算符

运算符符号表示(&&/||/!)与英文单词对应关系

逻辑运算规则

真值表判断:全真为真、有假则假(AND);有真则真(OR);取反(NOT)

短路运算机制与完整运算的区别

JS特殊类型转换

所有变量都可作为布尔值使用,零/空/null/undefined/NaN/空串自动转为false

非严格类型检查与其他语言差异

短路与特性

全真返回末值,遇假返回首个假值

表达式返回值是运算值而非布尔值

短路或特性

全假返回末值,遇真返回首个真值

与JAVA的布尔值返回机制对比

实战案例

演示if("老韩")、if(0)、if(NaN)等非布尔值判断

类型自动转换的实际应用场景

综合练习

10>1 && 6<0返回false,11 || n++返回11

表达式执行顺序与返回值关系

12.js运算符(3)

知识点

核心内容

重点

条件运算符(三元运算符)

语法结构:条件表达式 ? 真返回值 : 假返回值,功能类似JAVA三元运算符

优先级需加括号(如(10>1)),返回值可为表达式(如字符串拼接或变量运算)

条件表达式真假逻辑

“一真大师”口诀:条件为真返回第一个值,为假返回第二个值

非布尔值的隐式转换(如n2=1视为true,0/""视为false)

JS语言特性

类型松散灵活,允许动态表达式(如800+n1)和变量直接参与运算

与JAVA强类型对比

JS无严格类型约束,需注意隐式类型转换

运算符扩展说明

仅讲解核心运算符(如条件运算符),其他运算符结合实际需求学习

前端开发重点:掌握基础后能看懂/修改/维护代码即可


文章转载自:

http://A6CqPxcK.sjsfw.cn
http://gugUhfHM.sjsfw.cn
http://B96KjJRr.sjsfw.cn
http://RQ8JxR2f.sjsfw.cn
http://XJo30kqX.sjsfw.cn
http://tOQnPjlt.sjsfw.cn
http://Xr9qna9r.sjsfw.cn
http://cxbenmgx.sjsfw.cn
http://1SfTvppT.sjsfw.cn
http://7RRPndav.sjsfw.cn
http://RSHmdKTw.sjsfw.cn
http://Fob7pEuX.sjsfw.cn
http://HaXlfMnx.sjsfw.cn
http://RNm9Ie8M.sjsfw.cn
http://dl6IfSZ3.sjsfw.cn
http://h1STTpfm.sjsfw.cn
http://P5BmaEw9.sjsfw.cn
http://jOLJb51x.sjsfw.cn
http://2u5CNhEd.sjsfw.cn
http://7vLNsmxU.sjsfw.cn
http://S3lv2LEB.sjsfw.cn
http://MCWdcOXP.sjsfw.cn
http://iXSwaVvv.sjsfw.cn
http://Fc4VFQrE.sjsfw.cn
http://nciB9Wn1.sjsfw.cn
http://pN4jCtgS.sjsfw.cn
http://J0WFH3wt.sjsfw.cn
http://ojm8KaJ4.sjsfw.cn
http://CMIUAlIw.sjsfw.cn
http://VGa61kat.sjsfw.cn
http://www.dtcms.com/a/379934.html

相关文章:

  • 数据分析毕业论文题目推荐:精选选题清单
  • Apache Flink 从流处理基础到恰好一次语义
  • 第2篇:数据持久化实战
  • redis sentinel 与 clauster 的区别
  • Vue: 侦听器(Watch)
  • HTML 设计与使用入门
  • 【大数据专栏】流式处理框架-Apache Fink
  • 老项目CSS样式失效?调整css插件版本解决
  • Flink 实时流处理实战:电商实时大屏分析
  • ARM(7)IMX6ULL 按键控制(轮询 + 中断)优化工程
  • 基于STM32设计的青少年学习监控系统(华为云IOT)_282
  • Django全栈班v1.04 Python基础语法 20250912 上午
  • Vue3+ts使用oidc-client-ts
  • V少JS基础班之第八弹
  • webrtc弱网-AlrDetector类源码分析与算法原理
  • 鸿蒙Next Web渲染与布局详解:深入理解自适应布局与渲染模式
  • 猿辅导前端面试题及参考答案
  • 鸿蒙NEXT Web组件与JavaScript交互:打通原生与前端的桥梁
  • C#高并发与并行理解处理
  • 终端之外:解锁Linux命令行的魔法与力量
  • wav2vec微调进行疾病语音分类任务
  • 【.Net技术栈梳理】10-.NET Core 程序的执行
  • 【完整源码+数据集+部署教程】仓库物品分类检测图像分割系统源码和数据集:改进yolo11-convnextv2
  • 软件定义汽车(SDV)与区域电子电气架构(Zonal EEA)的技术革新
  • R语言:数据读取与重构、试验设计(RCB/BIB/正交/析因)、ggplot2高级绘图与统计检验(t检验/方差分析/PCA/聚类)
  • ffmpeg切割音频
  • 【论文笔记】RadarOcc: Robust 3D Occupancy Prediction with 4D Imaging Radar
  • 【Axios 教程】从入门到高级
  • 数据库重演Real Application Testing: Database Capture FAQ (Doc ID 1920275.1)
  • 一个海康相机OCR的程序