Javascript的API基本内容(四)

news/2024/4/19 3:49:33/文章来源:https://blog.csdn.net/qq_55928824/article/details/129247382

一、日期对象

获取时间戳的方法,分别为 getTime 和 Date.now 和 +new Date()

  // 1. 实例化const date = new Date()// 2. 获取时间戳console.log(date.getTime())
// 还有一种获取时间戳的方法console.log(+new Date())// 还有一种获取时间戳的方法console.log(Date.now())

二、DOM 节点

DOM节点的类型

  • DOM树里每一个内容都称之为节点
  • 节点类型:元素节点,所有的标签 比如 body、 div。html 是根节点。 属性节点,所有的属性 比如 href。文本节点,所有的文本。其他

 (1)查找父节点

parentNode 属性,返回最近一级的父节点 找不到返回为null

(2)查找子节点

childNodes:获得所有子节点、包括文本节点(空格、换行)、注释节点等
children 属性 (重点)

  • 仅获得所有元素节点
  • 返回的还是一个伪数组

 

 (3)查找兄弟结点

下一个兄弟节点:nextElementSibling 属性
上一个兄弟节点:previousElementSibling 属性

(4)插入(增加)节点

a:.创建节点

即创造出一个新的网页元素,再添加到网页内,一般先创建节点,然后插入节点

 b:追加节点

要想在界面看到,还得插入到某个父元素中,插入到父元素的最后一个子元素:

 

 插入到父元素中某个子元素的前面

 (5)删除节点

若一个节点在页面中已不需要时,可以删除它
l 在 JavaScript 原生DOM操作中,要删除元素必须通过父元素删除

 三、综合案例

要求:根据输入的内容注册学生信息,点击录入按钮增加学生信息列,点击对应的删除按钮可以删除对应的信息列

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>学生信息</title></head><style>.box {margin: 0 auto;text-align: center;}.box .formbox {width: 1000px;height: 80px;line-height: 80px;margin: 0 auto;}input {width: 100px;margin-right: 20px;}select {margin-right: 20px;width: 80px;}button {background-color: rgb(57, 57, 97);color: aliceblue;width: 80px;}.tablebox {width: 800px;margin: 0 auto;}table {border-collapse: collapse;}th {width: 111px;padding: 10px;background: #cfe5ff;font-size: 20px;font-weight: 400;}td,th {border: 1px solid #b8daff;}td {padding: 10px;color: #666;text-align: center;font-size: 16px;}tbody tr {background: #fff;}.delete {border: 0;width: 40px;background-color: #fff;color: rgb(24, 21, 21);border-bottom: 1px solid rgb(102, 137, 240);}</style><body><div class="box"><h1>学生注册信息表</h1><div class="formbox"><form action="#">姓名:<input class="name" name="name" /> 年龄:<inputclass="age"name="age"/>性别:<select class="sex" name="sex"><option value="男">男</option><option value="女">女</option></select>班级:<input class="banji" name="banji" /> 城市:<selectclass="city"name="city"><option>北京</option><option>上海</option><option>广州</option><option>深圳</option></select><button class="luru">录入</button></form></div><h2>信息榜</h2><div class="tablebox"><table><thead><th>学号</th><th>姓名</th><th>年龄</th><th>性别</th><th>班级</th><th>城市</th><th>操作</th></thead><tbody></tbody></table></div></div><script>const name = document.querySelector(".name");const age = document.querySelector(".age");const sex = document.querySelector(".sex");const city = document.querySelector(".city");const banji = document.querySelector(".banji");const tbody = document.querySelector("tbody");const arr = [];const btn = document.querySelector(".luru");// 获取所有带有name属性的 元素const items = document.querySelectorAll("[name]");btn.addEventListener("click", function (e) {// 阻止默认行为  不跳转e.preventDefault();for (let i = 0; i < items.length; i++) {if (items[i].value == "") {return alert("输入不能为空");}}let obj = {id: arr.length + 1,name: name.value,age: age.value,sex: sex.value,banji: banji.value,city: city.value,};arr.push(obj);render();});// 点击录入时调用的函数function render() {// 先清空tbody 以前的行 ,把最新数组里面的数据渲染完毕tbody.innerHTML = "";for (let j = 0; j < arr.length; j++) {let node = document.createElement("tr");node.innerHTML = `<td>${arr[j].id}</td><td>${arr[j].name}</td><td>${arr[j].age}</td><td>${arr[j].sex}</td><td>${arr[j].banji}</td><td>${arr[j].city}</td><td><a class="delete" data-id=${j}>删除</a></td>`;// 追加元素  父元素.appendChild(子元素)tbody.appendChild(node);}}tbody.addEventListener("click", function (e) {console.log(e.target.tagName);if (e.target.tagName == "A") {arr.splice(e.target.dataset.id, 1);}render();});</script></body>
</html>

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_75106.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【微信小程序-原生开发+TDesign】通用功能页封装——地点搜索(含腾讯地图开发key 的申请方法)

效果预览 核心技能点 调用腾讯地图官方的关键字地点搜索功能&#xff0c;详见官方文档 https://lbs.qq.com/miniProgram/jsSdk/jsSdkGuide/methodGetsuggestion 完整代码实现 地点输入框 <t-input value"{{placeInfo.title}}" bindtap"searchPlace" dis…

硬件工程师——门控开关的设计

假设自己是一个工程师&#xff0c;那么我们怎么介绍自己呢&#xff1f; 我们首先需要可以自己独立设计项目&#xff0c;需要每一个工程师在开始阶段可以独立做项目&#xff0c;从而提高薪水 那么我们怎么提高做项目的能力呢&#xff1f; 通过项目来积累经验&#xff0c;在短…

推荐几个实用的在线教程(建议收藏)

hello&#xff0c;大家好&#xff0c;我是木荣君。作为一名技术人员&#xff0c;工作中熟练使用各种管理及设计工具是一项必备的技能。今天给大家分享一下我工作中经常查看和学习的几个在线教程地址。供大家参考学习&#xff0c;建议收藏&#xff0c;真的很实用&#xff01; Gi…

InnoDB数据页结构__盛放记录的大盒子

一、不同类型的页简介 前边我们简单提了一下页的概念&#xff0c;它是InnoDB管理存储空间的基本单位&#xff0c;一个页的大小一般是16KB。InnoDB为了不同的目的而设计了许多种不同类型的页&#xff0c;比如存放空间头部信息的页&#xff0c;存放Insert Buffer信息的页&#xf…

MySQL 横表和竖表相互转换

一 竖表转横表 1. 首先创建竖表 create table student ( id varchar(32) primary key, name varchar (50) not null, subject varchar(50) not null, result int); 2. 插入数据 insert into student (id, name, subject, result) values (0001, 小明, 语文, 83); insert into…

一文透视宝莱特CRM如何建设与落地

宝莱特集团成立于1993年&#xff0c;是一家国家高新技术企业&#xff0c;始终坚持在医疗器械领域的深耕细作&#xff0c;坚持患者第一、临床优先&#xff0c;业务板块涵盖生命信息与支持、肾病医疗和大健康医疗三大领域。自成立以来&#xff0c;宝莱特推出了多个中国第一的自主…

八通道触摸芯片GTC08L Pin to Pin替代启攀微八通道触摸芯片

能Pin to Pin替代启攀微八通道触控芯片的电容式触摸芯片-GTC08L是一款非常适用于小功率音箱上超稳定超抗干扰低功耗八通道电容式触摸IC&#xff1b;可通过触摸实现各种逻辑功能控制&#xff1b;可以在发动机运行下进行8通道电容传感&#xff1b;对电磁兼容、电磁干扰、温湿度变…

Java的运算操作

个人主页&#xff1a;平行线也会相交 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 平行线也会相交 原创 收录于专栏【JavaSE_primary】 文章目录算术运算符增量运算符注意自增自减运算符关系运算符逻辑运算符逻辑与&&逻辑或||逻辑非&#xff01;…

华为OD机试题,用 Java 解【考古学家】问题

最近更新的博客 华为OD机试题,用 Java 解【停车场车辆统计】问题华为OD机试题,用 Java 解【字符串变换最小字符串】问题华为OD机试题,用 Java 解【计算最大乘积】问题华为OD机试题,用 Java 解【DNA 序列】问题华为OD机试 - 组成最大数(Java) | 机试题算法思路 【2023】使…

VB6遍历目录(文件夹和文件)

日期&#xff1a;2023年2月27日 作者&#xff1a;Commas 签名&#xff1a;(ง •_•)ง 积跬步以致千里,积小流以成江海…… 注释&#xff1a;如果您觉得有所帮助&#xff0c;帮忙点个赞&#xff0c;也可以关注我&#xff0c;我们一起成长&#xff1b;如果有不对的地方&#xf…

产业链金融对接央行征信过程

2018年10月底&#xff0c;央行二代征信系统上线试运行。2018年10月至2019年4月&#xff0c;央行二代征信系统 进行试运行&#xff0c;全国16家试点机构参与全业务试运行&#xff0c;14家机构进行查询试点。2019年6月&#xff0c;央行二 代征信系统正式上线。2019年6月至2020年1…

计算机信息系统安全服务等级证

计算机信息系统安全服务等级评定是规范行业服务、提升企业诚信度、保证工程质量、市场准入控制的重要保证&#xff0c;是安全服务机构从事信息网络安全服务能力的等级证明&#xff0c;为我省信息化建设使用单位在选择网络安全服务机构时提供参考依据。 等级划分 安全服务机构等…

Java中常用的七种队列你了解多少?

文章目录Java中常用的七种队列你了解多少?ArrayBlockingQueue队列如何使用&#xff1f;添加元素到队列获取队列中的元素遍历队列LinkedBlockingQueue队列如何使用&#xff1f;1. 创建SynchronousQueue对象2. 添加元素到队列3. 获取队列中的元素4. 遍历队列SynchronousQueue队列…

我要测网2022优秀检测机构评选活动举办,径硕科技分享数字营销趋势

2023年2月17号&#xff0c;由我要测网主办的「数字营销韧性增长&#xff5c;2023TIC营销人开年报告」圆满举办。来自南京市产品质量监督检验院、中国检科院测试评价中心、径硕科技JINGdigital等企业的3位“重量级”嘉宾进行了精彩纷呈的分享&#xff0c;为在低谷中前行的检测机…

我嘞个神——原来创建应用根本不需要会编码(看我10分钟应用上线)

目录 一、前言 二、官网功能查询与环境初始化 YonBuilder应用开发 三、测试过程 3.1、创建应用 3.2、数据建模 3.3、页面建模 3.4、页面发布 四、时间累计 五、效率评价 六、总结 一、前言 这里我用到了用友的平台&#xff0c;很多学生们刚毕业都在从事运维和实施的…

Java基础:常见API(Math,System,Runtime,Object,BigInteger,BigDecima)

1.常见API 1.1 Math类 向上取整是向着数轴右边走的意思, 负数也是. 也可以叫进一法, 不论正数负数都会往右走一. 向下取整是向着数轴左边走. 也可以叫去尾法, 不论正负数都会将小数点后的数字去掉. 1.1.2 练习 // 判断有多少水仙花数int count 0;for (int i 100; i < 1…

如何在没有任何额外包的情况下使用 NodeJS 下载文件

如何在没有任何额外包的情况下使用 NodeJS 下载文件 您可以下载文件&#xff08;图像、文本或任何类型的文件&#xff09;并使用 NodeJS 内置 https和 fs模块将其保存到您的文件系统。 该 https模块允许您使用 NodeJS 创建 HTTPS 请求&#xff0c;同时该 fs模块授予您访问文件…

【论文精读11】MVSNet系列(2018-2022)总结

MVSNet系列总结1.MVSNet ECCV20182.RMVSNet CVPR20193.P-MVSNet ICCV20194.MVSCRF ICCV20195.PointMVSNet ICCV20192019年的这四篇文章各有特点&#xff0c;其中RMVSNet、PointMVSNet更是打开了可以继续沿着往下做的思路&#xff1a;6.cascade MVSNet CVPR20207.UCSNet CVPR202…

Python-GEE遥感云大数据分析、管理与可视化技术及多领域案例实践应用

随着航空、航天、近地空间等多个遥感平台的不断发展&#xff0c;近年来遥感技术突飞猛进。由此&#xff0c;遥感数据的空间、时间、光谱分辨率不断提高&#xff0c;数据量也大幅增长&#xff0c;使其越来越具有大数据特征。对于相关研究而言&#xff0c;遥感大数据的出现为其提…

Python基础—while循环

(1)while循环&#xff1a; 语法格式&#xff1a; while 条件&#xff1a;   执行语句1……   执行语句2…… 适用条件&#xff1a;无限循环 死循环 while True:print(条件是真的&#xff01;)代码实例&#xff1a; i 0 # 创建一个计数的变量 while i < 5: # Truepr…