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

周报02JavaScript语言基础学习与 Aeb APIs学习

7.27

1.引入方式

JavaScript 程序不能独立运行,它需要被嵌入 HTML 中,然后浏览器才能执行 JavaScript 代码。通过script标签将 JavaScript 代码引入到 HTML 中,有两种方式:

内部方式:

通过script标签包裹 JavaScript 代码

外部形式

一般将 JavaScript 代码写在独立的以 .js 结尾的文件中,然后通过 script 标签的 src 属性引入

// demo.js document.write('嗨吼哈嘿!')
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>JavaScript 基础 - 引入方式</title> </head> <body> <!-- 外部形式:通过 script 的 src 属性引入独立的 .js 文件 --> <script src="demo.js"></script> </body> </html>

如果 script 标签使用 src 属性引入了某 .js 文件,那么 标签内的代码会被忽略!!!

2.输出 、输入

输出

JavaScript 可以接收用户的输入,然后再将输入的结果输出:alert()document.wirte()

输入

prompt()输入任意内容会以弹窗形式出现在浏览器中,一般提示用户输入一些内容。

3.变量、常量(const)

变量是计算机中用来存储数据的“容器”,通俗的理解变量就是使用【某个符号】来代表【某个具体的数值】(数据)

4.声明

声明关键字、变量名(标识)

关键字是 JavaScript 中内置的一些英文词汇(单词或缩写),它们代表某些特定的含义,如let的含义是声明变量的,看到let后就可想到这行代码的意思是在声明变量,如let age;

letvar都是 JavaScript 中的声明变量的关键字,推荐使用let声明变量

5.赋值

声明(定义)变量相当于创造了一个空的“容器”,通过赋值向这个容器中添加数据。

6.数据类型

注:通过typeof 关键字检测数据类型 number,string , boolean, undefined(未定义)

7.模板字符串

外面用``(反引号),内部用${...变量名}

8.制类型转换

(1)转换为String类型:

将其它数值转换为字符串有三种方式:toString()、String()、 拼串(+)。

(2)转换为Number类型:Number()、parseInt() 和parseFloat()。

Number()可以用来转换任意类型的数据,而后两者只能用于转换字符串。parseInt()只会将字符串转换为整数,而parseFloat()可以将字符串转换为浮点数。

(3)转换为Boolean类型:Boolean()函数

9.案例练习

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> h2 { text-align: center; } table { /* 合并相邻边框 */ border-collapse: collapse; height: 80px; margin: 0 auto; text-align: center; } th { padding: 5px 30px; } table, th, td { border: 1px solid #000; } </style> </head> <body> <h2>订单确认</h2> <script> // 用户输入(price num address)计算总额 页面打印 let price = +prompt('请输入商品价格:') let num = +prompt('请输入商品数量:') let address = prompt('请输入收货地址:') let total = price*num document.write(` <table> <tr> <th>商品名称</th> <th>商品价格</th> <th>商品数量</th> <th>总价</th> <th>收货地址</th> </tr> <tr> <td>小米青春版PLUS</td> <td>${price}元</td> <td>${num}</td> <td>${total}元</td> <td>${address}</td> </tr> </table> `) </script> </body> </html>

7.28

1.运算符

算术运算符作用
+求和
-求差
*求积
/求商
%取模(取余数),开发中经常用于作为某个数字是否被整除

注意:在计算失败时,显示的结果是 NaN (not a number)

赋值运算符作用
+=加法赋值
-+减法赋值
*=乘法赋值
/=除法赋值
%=取余赋值
自增自减运算作用说明
++自增变量自身的值加1,例如: x++
自减变量自身的值减1,例如: x–
比较运算符作用
>左边是否大于右边
<左边是否小于右边
>=左边是否大于或等于右边
<=左边是否小于或等于右边
===左右两边是否类型都相等(重点)
==左右两边是否相等
!=左右值不相等
!==左右两边是否不全等
逻辑运算符名称日常读法特点口诀
&&逻辑与并且符号两边有一个假的结果为假一假则假
||逻辑或或者符号两边有一个真的结果为真一真则真
!逻辑非取反true变false false变true真变假,假变真

2.语句

分支语句包含:

  1. if分支语句
  2. 三元运算符(...?...:...)

3.switch语句

switch(){

case:......break

default:......

}

循环语句:1.while循环 2.for 循环

3.综合案例

乘法表案例

<style> span { display: inline-block; padding: 5px 10px; border:1px solid pink; margin: 2px; border-radius: 5px; } </style> <body> <script> let i = 1 let j = 1 for(i=1;i<10;i++){ for(j=1;j<=i;j++){ document.write(`<span>${i}×${j}=${i*j}</span>`) } document.write('<br>') } </script>

4.数组

操作数组数组做为对象数据类型,不但有length属性可以使用,还提供了许多方法:

  1. push 动态向数组的尾部添加一个单元
  2. unshift 动态向数组头部添加一个单元
  3. pop 删除最后一个单元
  4. shift 删除第一个单元
  5. splice 动态删除任意单元

下面说一下splice函数:

处理数组的方法很多,javascript splice()算是最强大的了,它可以用于插入、删除或替换数组的元素。
1.删除-用于删除元素,两个参数,第一个参数(要删除第一项的位置),第二个参数(要删除的项数)
2.插入-向数组指定位置插入任意项元素。三个参数,第一个参数(其实位置),第二个参数(0),第三个参数(插入的项)
3.替换-向数组指定位置插入任意项元素,同时删除任意数量的项,三个参数。第一个参数(起始位置),第二个参数(删除的项数),第三个参数(插入任意数量的项)

7.29

1、函数

声明:完整函数包括关键字(function)、函数名、形式参数、函数体、返回值

调用:使用()调用函数。

函数可以分为具名函数和匿名函数

匿名函数:没有名字的函数,无法直接使用。

函数表达式 // 声明 let fn = function() { console.log('函数表达式') } // 调用 fn()

2. 对象

属性:用于描述对象特征的数据信息。多个属性之间使用英文逗号,分隔。

访问:可以通过点号.或方括号[]来获取对象中属性对应的值。

覆盖规则:在同一个对象中,如果出现同名的属性或方法,后面的会覆盖前面的。

ansparent">方法

  • Math.random,生成 0 到 1 间的随机数
// 0 ~ 1 之间的随机数, 包含 0 不包含 1 Math.random()
  • Math.ceil,数字向上取整
// 舍弃小数部分,整数部分加1 Math.ceil(3.4)
  • Math.floor,数字向下取整
// 舍弃小数部分,整数部分不变 Math.floor(4.68)
  • Math.round,四舍五入取整
// 取整,四舍五入原则 Math.round(5.46539) Math.round(4.849)
  • Math.max,在一组数中找出最大的
// 找出最大值 Math.max(10, 21, 7, 24, 13)
  • Math.min,在一组数中找出最小的
// 找出最小值 Math.min(24, 18, 6, 19, 21)
  • Math.pow,幂方法
// 求某个数的多少次方 Math.pow(4, 2) // 求 4 的 2 次方 Math.pow(2, 3) // 求 2 的 3 次方
  • Math.sqrt,平方根
// 求某数的平方根 Math.sqrt(16)

8.1

1、DOM(文档对象模型)

操作网页内容

DOM 树:将 HTML 文档以树状结构直观的表现出来,我们称之为文档树或 DOM 树,文档树直观的体现了标签与标签之间的关系。

DOM 节点:节点是文档树的组成部分,每一个节点都是一个 DOM 对象,主要分为元素节点、属性节点、文本节点等。

2、获取DOM对象(根据CSS选择器来获取DOM元素)

  1. querySelector 满足条件的第一个元素
  2. querySelectorAll 满足条件的元素集合 返回伪数组
  3. 其他方式
    1. getElementById
    2. getElementsByTagName
  • document.getElementById 专门获取元素类型节点,根据标签的id属性查找
  • 任意 DOM 对象都包含 nodeType 属性,用来检检测节点类型

3.操作元素内容

(1)通过修改 DOM 的文本内容,动态改变网页的内容。
  1. innerText将文本内容添加/更新到任意标签位置,文本中包含的标签不会被解析。
  2. innerHTML将文本内容添加/更新到任意标签位置,文本中包含的标签会被解析。

总结:如果文本内容中包含html标签时推荐使用innerHTML,否则建议使用innerText属性。

(2)实现对属性的修改:
常用属性修改:直接通过属性名修改

控制样式属性:

(1) 修改行内样式style属性,实现对样式的动态修改;(对象.style.样式属性 = 值)

任何标签都有style属性,通过style属性可以动态更改网页标签的样式,如要遇到css属性中包含字符-时,要将-去掉并将其后面的字母改成大写,如background-color要写成box.style.backgroundColor

(2)操作类名(className) 操作CSS(修改样式比较多的情况)

(3)通过 classList 操作类控制CSS:为了解决className 容易覆盖以前的类名,我们可以通过classList方式追加add() 删除remove() 切换类toggle()

<style> .box { width: 200px; height: 200px; color: #333; } .active { color: red; background-color: pink; } </style> </head> <body> <div class="box">123</div> <script> // 获取元素 const box = document.querySelector('.box') //修改 box.classList.add('active') </script> </body>

4.随机抽奖案例

<title>年会抽奖</title> <style> .wrapper { width: 840px; height: 420px; background: url(./images/bg01.jpg) no-repeat center / cover; padding: 100px 250px; box-sizing: border-box; } </style> </head> <body> <div class="wrapper"> <strong>传智教育年会抽奖</strong> <h1>一等奖:<span id="one">???</span></h1> <h3>二等奖:<span id="two">???</span></h3> <h5>三等奖:<span id="three">???</span></h5> </div> <script> const person = ['a', 'b', 'c', 'd'] const random = Math.floor(Math.random() * person.length) // console.log(person[random]) const one = document.querySelector('#one') one.innerHTML = person[random] person.splice(random, 1) const random2 = Math.floor(Math.random() * person.length) const two = document.querySelector('#two') two.innerHTML = person[random2] person.splice(random2, 1) const random3 = Math.floor(Math.random() * person.length) const three = document.querySelector('#three') three.innerHTML = person[random3] person.splice(random3, 1) s </script> </body>
http://www.jsqmd.com/news/1332729/

相关文章:

  • 科目一警告标志全解析:从设计原理到实战驾驶决策
  • 抖音批量下载工具的技术架构与实现范式:从API调用到数据完整性的工程实践
  • 电流互感器带宽怎么选
  • 伺服电爪选型深度指南|闭环力控伺服电动夹爪工况方案,国产高品质替代进口
  • 从RGB传感器到高精度照度计:基于光谱校正的勒克斯测量进阶指南
  • STM32串口中断通信:从阻塞轮询到高效并发的HAL库实战指南
  • 3分钟掌握NCM格式解密:网易云音乐文件转换终极指南
  • 手动控制烤面包机烤箱实现回流焊:原理、选型与全流程实操指南
  • 许昌二手房翻新怎么选?本地人都在看的避坑指南 - 品牌帮
  • C语言数据类型,变量,常量
  • WCPulse 第 053 个开关:禁用语音转述图标的位置、验证方法与风险边界
  • 告别网盘下载限速:LinkSwift八大网盘直链解析工具完全指南
  • 电流互感器采样电阻怎么选
  • 15-Linux学习之旅之TCP IP模型基础认知
  • Mysql 复合查询
  • 国内领先工业超声波清洗供应商深度调研 —— 广东洁泰超声设备有限公司
  • 闲鱼店群自动化管理系统:20路并行采集,一天抓万条竞品数据不封号
  • 抖音批量下载终极指南:5分钟搞定自动化收藏神器
  • Hadoop任务容错机制与故障恢复实战指南
  • WCPulse 第 054 个开关:语音自动转换文字的位置、验证方法与风险边界
  • 2026顺义区ISO14001环境管理体系认证机构推荐、ISO45001职业健康安全管理体系认证机构哪家好?先避开这4个坑再说 - geo88
  • 魔兽争霸III终极增强指南:如何用WarcraftHelper插件解决所有兼容性问题
  • 思源宋体TTF:7种字重免费商用中文字体的终极指南
  • 5GNR UE开机到时间同步的全过程
  • STM32F103C8T6移植LVGL遇到的相关问题(W25Q64)
  • 终极免费激活指南:KMS智能脚本让Windows和Office永久激活变得简单
  • Python爬虫18个实战案例:从环境搭建到数据存储完整指南
  • 闲鱼采集工具:20核高并发不抢焦的云端挂机实战
  • Rust驱动的番茄小说下载器:高性能跨平台数字阅读解决方案终极指南
  • 激光切割支架三维设计:SolidWorks钣金模块实战指南