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

前端-JS基础-day5

目录

1、对象的使用

2、对象的常用方法

3、对象的方法

4、遍历对象

5、遍历数组对象

6、渲染学生信息表

7、数学内置对象

8、随机数函数

9、随机点名

10、猜数字游戏

11、猜数字游戏-设定次数

12、随机颜色案例

13、综合案例-学成在线渲染

14、拓展


1、对象的使用

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>对象的使用</title>
</head>
<body><script>// 1、声明对象let person = {uname: 'pink老师',age: 18,gender: '女'}console.log(person)console.log(typeof person)</script>
</body>
</html>

2、对象的常用方法

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>对象的常用操作</title>
</head>
<body><script>let person = {uname: 'pink老师',age: 18,gender: '女'}// 查 // 1、对象名.属性名// 2、对象名['属性名']console.log(person.age)console.log(person['age'])// 改// 对象名.属性名 = 新值person.gender = '男'console.log(person)// 增// 对象名.属性名 = 新值person.address = '武汉'console.log(person)</script>
</body>
</html>

3、对象的方法

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>对象的方法</title>
</head>
<body><script>let obj = {// 属性uname: 'pink',// 方法song: function(){console.log('hello~~')},dance:function(){console.log('dance~~')}}// 方法调用  对象名.方法名obj.song()</script>
</body>
</html>

4、遍历对象

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>遍历对象</title>
</head>
<body><script>// for in 遍历  不建议用来遍历数组// let arr = ['pink', 'red', 'blue']// for(let k in arr){//   console.log(k)  // 数组的下标,索引号,但是是字符串类型 '0','1','2'//   console.log(arr[k])  // arr[k]  对应 'pink','red','blue'// }// 遍历对象 for inlet obj = {uname: 'pink老师',age: 18,gender: '男'}for(let k in obj){console.log(k) // 属性名 'uname','age','gender'console.log(obj[k])  // 属性值 }</script>
</body>
</html>

5、遍历数组对象

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>遍历数组对象</title>
</head>
<body><script>let students = [{ name: '小明', age: 18, gender: '男', hometown: '河北省' },{ name: '小红', age: 19, gender: '女', hometown: '河南省' },{ name: '小刚', age: 17, gender: '男', hometown: '山西省' },{ name: '小丽', age: 18, gender: '女', hometown: '山东省' }]for(let i = 0; i < students.length; i++){// console.log(i)  // 下标索引// console.log(students[i])  // 每个对象console.log(students[i].name)console.log(students[i].hometown)}</script>
</body>
</html>

6、渲染学生信息表

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>渲染学生信息表</title><style>table {width: 600px;text-align: center;}table,th,td {border: 1px solid #ccc;border-collapse: collapse;}caption {font-size: 18px;margin-bottom: 10px;font-weight: 700;}tr {height: 40px;cursor: pointer;}table tr:nth-child(1) {background-color: #ddd;}table tr:not(:first-child):hover {background-color: #eee;}</style>
</head>
<body><h2>学生信息</h2><p>将数据渲染到页面中...</p><table><caption>学生列表</caption><tr><th>序号</th><th>姓名</th><th>年龄</th><th>性别</th><th>家乡</th></tr><script>// 1、数据准备let students = [{ name: '小明', age: 18, gender: '男', hometown: '河北省' },{ name: '小红', age: 19, gender: '女', hometown: '河南省' },{ name: '小刚', age: 17, gender: '男', hometown: '山西省' },{ name: '小丽', age: 18, gender: '女', hometown: '山东省' }]// 2、渲染页面for(let i =0; i < students.length; i++){document.write(`<tr><td>${i + 1}</td><td>${students[i].name}</td><td>${students[i].age}</td><td>${students[i].gender}</td><td>${students[i].hometown}</td></tr>`)}</script></table>
</body>
</html>

7、数学内置对象

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>数学内置对象</title>
</head>
<body><script>console.log(Math.PI)console.log('-----------------')// ceil 天花板  向上取整console.log(Math.ceil(1.1))  // 2console.log(Math.ceil(1.5))  // 2console.log(Math.ceil(1.9))  // 2console.log('-----------------')// floor 地板  向下取整console.log(Math.floor(1.1))  // 1console.log(Math.floor(1.5))  // 1console.log(Math.floor(1.9))  // 1console.log('-----------------')// round  四舍五入console.log(Math.round(1.1))  // 1console.log(Math.round(1.5))  // 2console.log(Math.round(1.9))  // 2console.log(Math.round(-1.1))  // -1console.log(Math.round(-1.5))  // -1console.log(Math.round(-1.51))  // -2console.log('-----------------')// 取整函数 parseInt(1.2)  // 1// 取整函数 parseInt('12px')  // 12// max 最大值 console.log(Math.max(1, 2, 3, 4, 5))  // 5// min 最小值console.log(Math.min(1, 2, 3, 4, 5))  // 1// abs  绝对值console.log(Math.abs(-1))  // 1</script>
</body>
</html>

8、随机数函数

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>随机数函数</title>
</head>
<body><script>// 左闭右开,能取到 0,但是取不到 1,只能取到0~1之间的一个随机小数// console.log(Math.random())// 0~10 之间的整数// console.log(Math.floor(Math.random()*11))// let arr = ['red', 'green', 'blue']// let random = Math.floor(Math.random()*arr.length)// console.log(arr[random])// 取到 N~M 的随机整数function getRandom(N, M){return Math.floor(Math.random() * (M - N + 1)) +N}console.log(getRandom(4,8))</script>
</body>
</html>

9、随机点名

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>随机点名</title>
</head>
<body><script>let arr = ['赵云', '黄忠', '关羽', '张飞', '马超', '刘备', '曹操']// 1、得到一个随机数,作为数组的索引号let random = Math.floor(Math.random() * arr.length)// 2、页面输出数组里面的元素document.write(arr[random])// 3、splice(起始位置下标,删除几个元素)// 删除已经抽到的元素 arr.splice(random, 1)console.log(arr)</script>
</body>
</html>

10、猜数字游戏

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>猜数字游戏</title>
</head>
<body><script>// 1、随机生成一个数字 1~10// 取到 N~M 的随机整数function getRandom(N, M){return Math.floor(Math.random() * (M - N + 1)) +N}let random = getRandom(1, 10)// 需要不断的循环while(true){// 2、用户输入一个值let num = +prompt('请输入1~10之间的一个数字:')// 3、判断输出if(num > random){alert('猜大了')}else if(num < random){alert('猜小了')}else{alert('猜对了,真厉害')break  // 退出循环}}</script>
</body>
</html>

11、猜数字游戏-设定次数

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>猜数字游戏-设定次数</title>
</head>
<body><script>// 1、随机生成一个数字 1~10// 取到 N~M 的随机整数function getRandom(N, M){return Math.floor(Math.random() * (M - N + 1)) +N}let random = getRandom(1, 10)// 2、设定三次,三次没猜对就直接退出let flag = true  // 开关变量for(let i = 1; i <= 3; i++){let num = +prompt('请输入1~10之间的一个数字:')if(num > random){alert('猜大了')}else if(num < random){alert('猜小了')}else{flag = falsealert('猜对了,真厉害')break  // 退出循环}}// 写到for的外面来if(flag){alert('次数已经用完')}</script>
</body>
</html>

12、随机颜色案例

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>随机颜色案例</title><style>div {width: 300px;height: 300px;}</style>
</head>
<body><div></div><script>// 1、自定义一个随机颜色函数function getRandomColor(flag = true){if(flag){// 3、如果是true,则返回 #fffffflet str = '#'let arr = ['0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f']// 利用for循环随机抽6次,拼接到strfor(let i = 1; i <= 6; i++){// 每次要随机从数组里面抽取一个// random 是数组的索引号  是随机的let random = Math.floor(Math.random() * arr.length)str += arr[random]}return str}else{// 4、否则是 false,则返回rgb(255,255,255)let r = Math.floor(Math.random() * 256)let g = Math.floor(Math.random() * 256)let b = Math.floor(Math.random() * 256)return `rgb(${r}, ${g}, ${b})`}}// 2、调用函数 getRandomColor(布尔值)// console.log(getRandomColor(false)) // console.log(getRandomColor(true)) const div = document.querySelector('div')div.style.backgroundColor = getRandomColor()</script>
</body>
</html>

13、综合案例-学成在线渲染

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>学成在线首页</title><link rel="stylesheet" href="./css/style.css"><style></style>
</head>
<body><!-- 4. box核心内容区域开始 --><div class="box w"><div class="box-hd"><h3>精品推荐</h3><a href="#">查看全部</a></div><div class="box-bd"><ul class="clearfix"><script>let data = [{src: 'images/course01.png',title: 'Think PHP 5.0 博客系统实战项目演练',num: 1125},{src: 'images/course02.png',title: 'Android 网络动态图片加载实战',num: 357},{src: 'images/course03.png',title: 'Angular2 大前端商城实战项目演练',num: 22250},{src: 'images/course04.png',title: 'Android APP 实战项目演练',num: 389},{src: 'images/course05.png',title: 'UGUI 源码深度分析案例',num: 124},{src: 'images/course06.png',title: 'Kami2首页界面切换效果实战演练',num: 432},{src: 'images/course07.png',title: 'UNITY 从入门到精通实战案例',num: 888},{src: 'images/course08.png',title: 'Cocos 深度学习你不会错过的实战',num: 590},]for(let i = 0; i < data.length; i++){document.write(`<li><a href="#"><img src=${data[i].src} alt="${data[i].title}"><h4>${data[i].title}</h4><div class="info"><span>高级</span> • <span>${data[i].num}</span>人在学习</div></a></li>`)}</script></ul></div></div>
</body>
</html>

14、拓展

http://www.dtcms.com/a/434766.html

相关文章:

  • 字体版权登记网站WordPress网站结构优化
  • [特殊字符]【保姆级教程】GLM-4.6 接入 Claude Code:200K 长上下文 + Agentic Coding,开发者福音!编程能力大幅提升!
  • 大前端开发技术知识框架详解、Mono repo工程化实践详解、微前端实践详解
  • MDK编译过程
  • 网站整体风格设计ios aso优化工具
  • 数据结构KMP算法详解:C语言实现
  • 【网络通讯安全认证的理解:从密钥签名、数字证书到 HTTPS/TLS 流程】
  • 蜘蛛抓取网站模块原理推广是怎么做的
  • 中国石油AI中台-昆仑大模型介绍(二)
  • RAG核心特性:查询增强和关联
  • Spring 中事务的实现
  • 苏州哪家公司做网站网站布局是什么
  • AI智能体在研究分析中的仿真应用:预测、生存与建构——情绪是基于趋利避害的预测机制吗?
  • 12.排序(上)
  • Java bean 数据校验
  • 级数敛散性判别:泰勒展开与等价无穷小的正确使用
  • gRPC从0到1系列【13】
  • 笔记本 光驱 的内部结构及用法: 应急系统启动 (恢复) 光盘 (DVD+R/RW)
  • DirectX Repair下载安装教程(附安装包)2025最新版(DirectX Repair V4.5增强版+dll修复工具)
  • 26考研 | 王道 | 计算机组成原理 | 二、数据的表示和运算
  • 上海网站推河北关键词排名推广
  • 游戏代练经济矩阵计算器
  • K8s学习笔记(十一) service
  • 【MCU】【STM32】基于STM32CubeMX+CLion的STM32开发环境
  • 十堰市住房和城乡建设厅官方网站王野天天
  • 【机器人】SG-Nav 分层思维链H-CoT | 在线分层3D场景图 | 目标导航
  • 全面保护隐私的开源个人知识管理工具——SiYuan
  • html5网站开发参考文献无锡网站制作哪家值得信赖
  • python简易程序跑NLPIR模型
  • GPIO 子系统和 pinctrl 子系统