JavaScript新手学习手册-基础代码(三)

news2025/7/10 23:02:34

与上篇博客相接

一:Date对象

        var date = new Date();
        console.log(date);    //全部时间
        console.log(date.getFullYear()); //年
        console.log(date.getMonth());    //月
        console.log(date.getDay());      //星期几
        console.log(date.getHours())     //时
        console.log(date.getMinutes())   //分
        console.log(date.getTime())      //获取当前时间的时间戳
        console.log(new Date(1677755112551)) //将时间戳转化成时间

控制台输出:

二:Json:

关于json的内容,之前的一篇博客已经详细进行说明了

Json详解

三:Ajax

Ajax 应用程序可能使用 XML 来传输数据,但将数据作为纯文本或 JSON 文本传输也同样常见。 Ajax 允许通过与场景后面的 Web 服务器交换数据来异步更新网页。这意味着使用Ajax可以实现    网页在不刷新的情况下进行内容的更新,同样可以在网页加载完成后向服务器接收或则请求数据,也可以实现在后台服务器发送数据。

四:面向对象编程

方法一:

<script>
        var student1={
            name:'ma',
            id:0371,
            sex:'nan',
            run:function () {
                console.log(this.name + '会跑了');
            }
        };
        var xiaoming = {
            name:'xiaoming'
        };
        xiaoming.__proto__ = student1;   //继承 对象小明继承student1 对象,并调用student1的方法
                                         //注意:__是两条线
    </script>

 控制台:这种面向对象编程程序,写的非常的别扭,并不是最为理想化的代码结构。

class类继承

从属性,类,方法向java编程语言靠近,完成代码在JavaScript环境下的编写

<script>
        'use strict'
        class user {
            constructor(id) {  //有参构造
                this.id = id;
            }
            hello(){        //类中创建方法
                alert("hello");
            }
        }
        class user2 extends user{
            constructor(id,name) {
                super(id);
                this.name = name;

            }
            hi(){
                alert(name+'我是一个小垃圾'+'考了'+this.id)
            }
        }
       // var z = new user(10);
        var zz = new user2(2,'马')
        zz.hi();
</script>

控制台输出:按照Java的构造方法来实现方法的继承

打印输出user2类:user即是user2的父类

如何给对象增添一个方法?

        function f() {
           
    }
    f.prototype.hi = function () {
            alert('hello');
        }

调用:f.prototype.hi() 

 五:Bom对象:

浏览器对象,在内容的介质之上与浏览器窗口交互的对象。它主要负责的是窗口与窗口之间的交流,Bom对象的核心就是window,除此之外Bom对象还是由很多的对象组合而成,每个对象都提供了很多的方法和属性。针对的是窗口与子窗口。

通过window来获取浏览器窗口的一些信息

window.innerHeight //内部行高:注意高度随着浏览器的变化,而发生变化
190
window.innerHeight
150
window.innerWidth  //内宽
1082
window.innerWidth
1010
window.outerHeight //外高
767  
window.outerWidth  //外宽
1024

关于浏览器的一些信息:

navigator.appName
'Netscape'
navigator.appVersion
'5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.60 Safari/537.36'
navigator.userAgent
'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.60 Safari/537.36'
navigator.platform
'Win32'

获取屏幕的宽和高 

screen.height
864
screen.width
1536

 获取网页的标题,并修改标题

document.title
'Title'
document.title = "xiaoma"
'xiaoma'

 获取网页的cookie

document.cookie
'_ga=GA1.1.1537867722.165243fsfesfsefsefsefsefsejiefesef1.1642234496.0'

六:Dom:文档对象模型

DOM又被称为接口,是javascript对网页进行操作的接口,将网页转化成JavaScript对象,通过脚本来执行各种的操作,浏览器通过DOM对象,将网页解析成一系列的节点。通过DOM对象来实现对网页控制。

节点:这是DOM对象中最为重要的一环,它是DOM的最小组成单位。

节点的各种类型:

1.元素节点,代表html中的标签;

2.属性节点,代表html标签的属性;

3.文本节点,代表html标签中的文本内容;

4.注释节点,代表html文档中的注释内容;

5.文档节点,代表整个文档,也是dom文档树的根节点;

6.文档类型节点,代表文档类型,一般指html第一行的doctype;

这里就不详细进行介绍,如果详细了解可以去网页取去搜索。

1:获取节点

    <div id="demo2">
        <h1>h1标签</h1>      
        <p id="demo3">demo3_p标签</p>
        <p class="demo4">demo4_p</p>
    </div>
    <script>
        var father = document.getElementById('demo2')   //获取id节点
        console.log(document.getElementById('demo2'))
        console.log(document.getElementsByName('h1'))   //获取标签name节点
        console.log(document.getElementById('demo3'))   
        var a = document.getElementsByClassName('demo4') //获取class节点
    </script>

2:获取父节点下面的所有子节点

var father = document.getElementById('demo2')   //获取id父节点       
 father.children   //通过children方法获取父节点下面的所有子节点

 3:更新节点

    <div id="demo2">
    </div>
    <script>
    var father = document.getElementById('demo2');
    </script>

4:通过节点去修改内容

修改文本内容:

 修改HTML标签:定义新的网页代码

5: 删除节点

    <div id="demo2">
        <h1>h1标签</h1>
        <p id="demo3">demo3_p标签</p>
        <p class="demo4">demo4_p</p>
    </div>

方法一:通过定义节点进行删除 

 方法二:通过子节点的下标进行删除

 注意:当通过此方法进行删除时,删除了第一个,那么后面的子节点会前进一格,所用靠索引进行删除一定要注意下标的索引值。

7:添加节点

原始代码:

    <p id="demo5">demo5</p>
    <div id="demo2">
        <h1>h1标签</h1>
        <p id="demo3">demo3_p标签</p>
        <p class="demo4">demo4_p</p>
    </div>

在控制台进行节点的添加 

8:通过节点实现网页格式代码的修改

修改前:

 添加下面代码之后:

        var dom3 = document.getElementsByTagName("head")[0]; //获取herd标签的地址
        var dom4 = document.createElement("style");   //创建一个新的标签
        dom4.setAttribute('type','text/css');       //在新建的标签设置标签的类型
        dom4.innerHTML ='body{ background-color: red;}';    //在新建的标签添加新的属性
        dom3.appendChild(dom4);      //将新建的标签添加到dom3的标签内
        dom4.insertBefore(dom5,dom2);

查看网页代码元素:

 9:insertBefore:指定位置添加节点

    <dl id="demo1">
        <dd id="aa">java</dd>
        <dd id="bb">javaScript</dd>

    </dl>
    <p id="cc">javaweb</p>


代码输出结果:

<script>        
        var aa = document.getElementById('aa');
        var bb = document.getElementById('demo1');
        var cc = document.getElementById('cc');
        bb.insertBefore(cc,aa);
</script>

从指定位置添加节点后进行输出

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

java实现Hbase 增删改查

目录 一、新建一个maven工程 二、代码实现 2.1、配置hbase信息&#xff0c;连接hbase数据库 2.2、创建命名空间 2.3、创建表 2.4、删除表&#xff0c;删除之前要设置为禁用状态 2.5、添加数据 2.6、获取命令表空间 / tables列表 2.7、get方法查看表的内容 2.8、scan方法…

腾势D9改装来了,帮大家总结了一些需要改装的项目

最近腾势D9真的太火了&#xff0c;不仅外观霸气&#xff0c;内饰也是非常豪华。 1月份销量在MPV里已经排名第二了&#xff0c;性价比很高。 这边整理了一些改装项目供大家参考&#xff0c;有什么想法可以评论区一起讨论哦1. 电吸门 有车主吐槽车门难关&#xff0c;由于车内空间…

计算机网络:ICMP协议

网际控制报文协议ICMP ICMP协议支持主机或者路由器差错报告和网络探询 类型表明ICMP报文是哪类检验和&#xff1a;检验整个ICMP报文ICMP报文可分为ICMP差错报文和ICMP询问报文。 ICMP差错报告报文 终点不可达&#xff1a;当路由器或者主机不能交付数据报时&#xff0c;向源站…

Spring - Spring框架概述面试题总结

文章目录01. 什么是Spring&#xff1f;02. Spring框架的设计目标&#xff0c;设计理念&#xff0c;和核心是什么&#xff1f;03. Spring的优点是什么&#xff1f;04. Spring框架中都用到了哪些设计模式&#xff1f;05. Spring有哪些应用场景?06. Spring由哪些模块组成&#xf…

基于DDD的微服务落地

DDD四层架构对实时性要求高的强一致性业务场景&#xff0c;可采取分布式事务。分布式事务有性能代价&#xff0c;在设计时需要平衡考虑业务拆分、数据一致性、性能和实现的复杂度&#xff0c;尽量避免分布式事务的产生。领域事件驱动的异步方式是分布式架构常用的设计方式&…

【python】使用python将360个文件夹里的照片,全部复制到指定的文件夹中,并且按照顺序重新命名

最近要做一个图像生成的课题&#xff0c;在网上找了一个混合的数据集。这个数据集中一共有360个文件夹&#xff0c;然后文件夹中有6-9张不等的照片&#xff0c;我的目标就是编写python代码将所有的照片取出来&#xff0c;放到一个指定的文件夹里&#xff0c;并且从1开始按照顺序…

yolov8行人识别教程(2023年毕业设计+源码)

yolov8识别视频直接上YOLOv8的结构图吧&#xff0c;小伙伴们可以直接和YOLOv5进行对比&#xff0c;看看能找到或者猜到有什么不同的地方&#xff1f; Backbone&#xff1a;使用的依旧是CSP的思想&#xff0c;不过YOLOv5中的C3模块被替换成了C2f模块&#xff0c;实现了进一步的轻…

VMware虚拟机安装Ubuntu 2022最新版详细图文安装教程(VMware虚拟机安装+Ubuntu下载+VMware虚拟机配置运行)

名人说:君子生非异也,善假于物也。——荀子 Code_流苏(CSDN) o(‐^▽^‐)o很高兴你打开了这篇博客,跟着步骤一步步尝试安装吧。✧ 目录 一、简单介绍二、安装虚拟机VMware三、Ubuntu镜像下载四、虚拟机VMware配置及运行★如有疑问,欢迎评论,博主看到即回!当然,期待你的…

【基础算法】双指针---判断子序列

&#x1f339;作者:云小逸 &#x1f4dd;个人主页:云小逸的主页 &#x1f4dd;Github:云小逸的Github &#x1f91f;motto:要敢于一个人默默的面对自己&#xff0c;强大自己才是核心。不要等到什么都没有了&#xff0c;才下定决心去做。种一颗树&#xff0c;最好的时间是十年前…

极速开发,无限可能,2023网易低代码大赛全新赛季启动

去年火爆的低代码大赛还犹在目&#xff0c;近800人用轻舟低代码平台畅享开发乐趣。这不&#xff0c;2023网易低代码大赛即刻启动&#xff0c;3月6日至3月27日限时开放报名&#xff0c;全新角逐&#xff0c;正式展开&#xff01;1\ 获胜者可得万元大奖、猪厂工作机会 /Low Code …

JavaEE课程实践-Servlet的部署(tomcat服务器)

目录 Servlet简述 tomcat服务器的安装和运行 Servlet的部署 部署具体步骤 一、创建maven工程 二、创建Servlet类 三、导入相应jar包 四、编写Servlet代码 五、运行maven项目&#xff0c;启动tomcat服务器 六、测试访问是否成功。 Servlet简述 Servlet 是 Java EE 技术…

第六章:多线程

第六章&#xff1a;多线程 6.1&#xff1a;程序、进程、线程基本概念 程序 程序program是为了完成特定任务、用某种语言编写的一组指令的集合。即指一段静态的代码&#xff0c;静态对象。 进程 ​ 进程process是程序的一次执行过程&#xff0c;或是正在运行的一个程序。是一个…

vue3相比vue2性能上提升体现

vue3相比vue2&#xff0c;在 编译阶段&#xff0c;源码体积 响应式系统 都做了性能提升不以解决实际业务痛点的更新都是耍流氓1. ts的支持2. 移除了不常用的api,例如 过滤器 $on $off $once 实例方法 内联模板attribute $destroy3. 加了tree - shaking4. 移除了mixin缺点&#…

ESP32设备驱动-RFID-RC522模块驱动

RFID-RC522模块驱动 文章目录 RFID-RC522模块驱动1、RFID-RC522介绍2、硬件准备3、软件准备4、驱动实现1、RFID-RC522介绍 基于 NXP 的 MFRC522 IC 的 RC522 RFID 模块通常带有一个 RFID 卡标签和具有 1KB 内存的密钥卡标签。 最重要的是,它可以写一个标签,这样你就可以在里…

前端老赵一次给你讲透“微前端”架构

一、引言&#xff1a; 随着Web应用程序的规模和复杂度的不断增加&#xff0c;前端技术也在不断发展和演进。微前端是近年来兴起的一种前端架构模式&#xff0c;通过将大型Web应用程序拆分为小型、可独立开发和部署的模块&#xff0c;从而降低开发和维护的难度&#xff0c;同时…

【LeetCode与《代码随想录》】二叉树篇:做题笔记与总结-JavaScript版

文章目录代码随想录144. 二叉树的前序遍历94. 二叉树的中序遍历145. 二叉树的后序遍历102.二叉树的层序遍历226.翻转二叉树101. 对称二叉树104.二叉树的最大深度111.二叉树的最小深度222.完全二叉树的节点个数110.平衡二叉树257. 二叉树的所有路径404.左叶子之和513.找树左下角…

盘点曾经很火但消失了的8个软件

目录 1、飞信 3、暴风影音 4、千千静听 5、虾米音乐 6、快车下载 7、人人网 8、QQ农场 今天小编给大家分享曾经很火但消失了的8个软件&#xff0c;你都用过吗&#xff1f; 1、飞信 飞信是中国移动通信集团公司推出的一款短信、语音、视频通信应用程序。它于2007年推出&a…

JDK的动态代理(powernode 文档)(内含源代码)

JDK的动态代理&#xff08;powernode 文档&#xff09;&#xff08;内含源代码&#xff09; 源代码下载链接地址&#xff1a;https://download.csdn.net/download/weixin_46411355/87546086 一、动态代理 目录JDK的动态代理&#xff08;powernode 文档&#xff09;&#xff0…

什么是L1和L2正则化,以及它们有什么区别

一、L1和L2正则化是什么&#xff1f; 在防止过拟合的方法中有L1正则化和L2正则化&#xff0c;L1和L2是正则化项&#xff0c;又叫做惩罚项&#xff0c;是为了限制模型的参数&#xff0c;防止模型过拟合而加在损失函数后面的一项。 在二维的情况下&#xff0c;黄色的部分是L2和…

【云原生】rancher2.6部署MySQL—2023.03

文章目录概要1. 准备NFS服务器1.1 安装nfs1.2 创建挂载路径1.3 启动NFS服务2. 所有node节点上安装NFS服务3. rancher上部署MySQL3.1 创建PV3.2 创建PVC3.3 创建服务发现3.4 部署MySQL服务4. 测试概要 本文以单master节点为例&#xff0c;部署mysql&#xff0c;多master&#x…