jQuery 基础知识

news2024/11/24 22:25:54

1.jQuery的使用

要想使用 jQuery 的话,我们必须先要官网上下载(  http://jquery.com/  )3.7 到 4.0的开发版本就可以,下载到文件夹以后桌面都可以 ,然后拖动到代码编辑器根目录下即可

 

 在需要使用 jQuery 的页面引入 jquery 的核心 js 文件

<script src="../js/jquery-3.7.0.js" type="text/javascript" charset="utf-8"></script>

2. DOM 对象 与 jQuery 包装集对象

DOM 对象

        通过 js 方式获取的元素对象( documnet )

JQuery 对象

        通过 jquery 方法获取的元素对象,返回的是 jquery 包装集

区别:

        获取 dom 对象时会返回 “  元素  ”  本身的标签及内容

        获取 jQuery 对象时会返回一个 包装集 对象

<!-- 
		Dom对象
			通过js方式获取的元素对象(document)
		Jquery对象
			通过jquery方法获取的元素对象,返回的是jquery包装集
	 -->
<!-- 引入jquery的核心js文件 (如果未引入jquery,则报错:$ is not defined)-->
<script src="../js/jquery-3.7.0.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
	/*  Dom对象 */
	var divDom = document.getElementById("mydiv");
	console.log(divDom);
	var divsDom = document.getElementsByTagName("div");
	console.log(divsDom);
	// js获取不存在的元素
	var spanDom = document.getElementsByTagName("span");
	console.log(spanDom);
	var spanDom2 = document.getElementById("myspan");
	console.log(spanDom2);

	console.log("==========");


	/* Jquery对象 */
	// 通过id选择获取元素对象  $("#id属性值")
	var divJquery = $("#mydiv");
	console.log(divJquery);
	// jquery获取不存在的元素
	var spanJquery = $("#myspan")
	console.log(spanJquery);

	console.log("========");
	/* Dom对象 转 Jquery对象 */
	// Dom对象转为jQuery对象,只需要利用$()方法进行包装即可
	var divDomToJquery = $(divDom);
	console.log(divDomToJquery);

	/* Jquery对象 转 Dom对象 */
	// 获取包装集对象中指定下标的元素,将jquery对象转换成dom对象
	var divJqueryToDom = divJquery[0];
	console.log(divJqueryToDom);

</script>

3.基础选择器

基础选择器

id选择器        #id属性值        $(" #id属性值 ")  选择id为指定的元素对象(  如果有多个同名的id属性,则以第一个为标准 )

类选择器        .class属性值        $('' .class属性值 '')  选择clsss为指定值的元素对象

元素选择器        标签名/元素名        $(" 标签名/元素名 ")  选择所有指定标签的元素对象

通用选择器        *        $('' * '')        选择页面中所有的元素对象

组合选择器        选择器1 , 选择器2        $(''  选择器1,选择器2 '')  选择指定选择器选中的元素对象

<body>
		<div id="mydiv1" class="blue">元素选择器</div>
		<div id="mydiv1">id选择器1<span>span中的内容</span></div>
		<span class="blue">样式选择器</span>
</body>
<script type="text/javascript">
	 	// id选择器			#id属性值	
		var mydiv = $("#mydiv1");
		console.log(mydiv);
		
		// 类选择器			.class属性值	
		var clas = $(".blue");
		console.log(clas);
		
		// 元素选择器		标签名/元素名
		var spans = $("span");
		console.log(spans);
		
		// 通用选择器		*	
		var all = $("*");
		console.log(all);
		
		// 组合选择器		选择器1,选择器2,..
		var group = $("#mydiv1,div,.blue");
		console.log(group);
		
		
	 </script>

4.层次选择器

层次选择器:

        后代选择器

               格式: 父元素  指定元素( 空格隔开 )

                示例:$( ''  父元素   指定元素  '' )

                选择父元素的所有指定元素(  包含第一代、第二代等 ) 

         子代选择器

                格式:父元素 > 指定元素 (大于号隔开)

                示例:$('''  父元素 >  指定元素 '')

                选择父元素的所有第一代指定元素

        相邻选择器

                格式:元素 + 指定元素 (  加号隔开 )

                示例:$('''  元素 + 指定元素 '')

                选择元素的下一个指定元素( 只会查找下一个元素的 ,如果元素不存在,则获取不到)

        同辈选择器

                格式:元素 ~ 指定元素 (  波浪号隔开 )

                示例:$(''  元素 ~ 指定元素  '')

                选择元素下面的所有指定元素

        

<body>
	<div id="parent">层次择器
		<div id="child" class="testColor">父选择器
			<div class="gray">子选择器</div>
			<img src="http://www.baidu.com/img/bd_logo1.png" width="270" height="129" />
			<img src="http://www.baidu.com/img/bd_logo1.png" width="270" height="129" />
		</div>
		<p>p元素</p>
		<div>
			选择器2<div>选择器2中的div</div>
		</div>
	</div>
</body>
<script src="../js/jquery-3.7.0.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
	// 后代选择器
	var hd = $("#parent div");
	console.log(hd);

	// 子代选择器
	var zd = $("#parent > div");
	console.log(zd);

	// 相邻选择器
	var xl = $("#child + div");
	console.log(xl);

	// 同辈选择器
	var imgs = $(".gray ~ img");
	console.log(imgs);

</script>

5.表单选择器

  表单选择器   :input      查找所有的input元素:$(":input");

                      注意:会匹配所有的input、textarea、select和button元素。

      文本框选择器    :text

      密码框选择器    :password

      单选按钮选择器 :radio

      多选按钮选择器 :checkbox

      提交按钮选择器 :sunmit

      图像按钮选择器 :image

      重置按钮选择器 :reset

      文件域选择器    :file

      按钮选择器   :button

<script src="../js/jquery-3.7.0.js" type="text/javascript" charset="utf-8"></script>
	<script type="text/javascript">
		// 表单选择器		:input
		var inputs = $(":input");
		console.log(inputs);
		// 元素选择器
		var inputs2 = $("input");
		console.log(inputs2);

6.操作元素的属性

        操作元素的属性

                属性的分类:

                        固有属性:元素本身就有的属性(id、name、calss、style)

                        返回值是boolean的属性:checked、selected、disabled

                        自定义属性:用户自己定义的属性

                attr()和 prop()的区别

                        1.如果是固有属性,attr()和 prop()方法均可操作

                        2.如果是自定义属性,attr()可操作,prop()不可操作

                        3.如果是返回值是 boolean 类型的属性

                                如设置属性,attr()返回具体的值,prop()返回 true

                                未设置属性。attr()返回 undefined,prop()返回 false

               1. 获取属性

                        attr(‘’  属性名 ‘’)

                        prop(‘’  属性名 ‘’)

                2. 设置属性值

                        attr(‘’  属性名 ‘’,‘’  属性值 ‘’)

                        prop(‘’  属性名 ‘’,‘’  属性值 ‘’)

                3. 移除属性

                        removeAttr(‘’  属性名  ‘’)

        总结:如果属性的类型是 Boolean (checked、selected、disabled),则使用prop()方法,否则使用 attr ()方法

 <input type="checkbox" name="ch" checked="checked" id="aa" abc="aabbcc"/>	aa
		 <input type="checkbox" name="ch" id="bb" />	bb
	</body>
	<script src="../js/jquery-3.7.0.js" type="text/javascript" charset="utf-8"></script>
	<script type="text/javascript">
		/* 获取属性 */
		// 固有属性
		var name = $("#aa").attr("name");
		console.log(name);
		var name2 = $("#aa").prop("name");
		console.log(name2);
		// 返回值是boolean的属性(元素设置了属性)
		var ck1 = $("#aa").attr("checked"); // checked
		var ck2 = $("#aa").prop("checked"); // true
		console.log(ck1);
		console.log(ck2);
		// 返回值是boolean的属性(元素未设置属性)
		var ck3 = $("#bb").attr("checked"); // undefined
		var ck4 = $("#bb").prop("checked"); // false
		console.log(ck3);
		console.log(ck4);
		// 自定义属性
		var abc1 = $("#aa").attr("abc"); // aabbcc
		var abc2 = $("#aa").prop("abc"); // undefined
		console.log(abc1);
		console.log(abc2);
		
		/* 设置属性 */
		// 固有属性
		$("#aa").attr("value","1");
		$("#bb").prop("value","2");
		
		// 返回值是boolean的属性
		$("#bb").attr("checked","checked");
		$("#bb").prop("checked",false);
		
		// 自定义属性
		$("#aa").attr("uname","admin");
		$("#aa").prop("uage",18);
		
		/* 移除属性 */
		$("#aa").removeAttr("checked")
		
		
	</script>

7.操作元素的样式

        attr(‘’ class ‘’)        获取元素的样式名

        attr(‘’  calss  ‘’,样式名)        设置元素样式(设置元素样式。原本的样式会被删除)

        addclass(‘’ 样式名 ‘’)       添加样式( 在原来的基础上添加样式,原本的样式会保留,如果出现相同的样式,则以样式中后定义的为准)

        css()        添加具体的样式( 添加行内样式 )

                css(‘’ 具体样式名 ‘’,‘’  样式值  ‘’)设置单个样式

                css({ “  具体样式  ”:‘’  样式值 ’‘,“  具体样式  ”:‘’  样式值 ’‘ })设置多个样式值

        removeClass(’‘  样式名 '’) 移除样式

<h3>css()方法设置元素样式</h3>
	<div id="conBlue" class="blue larger">天蓝色</div>
	<div id="conRed">大红色</div>
	<div id="remove" class="blue larger">天蓝色</div>
</body>
<script src="../js/jquery-3.7.0.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
	// attr("class") 	获取元素的样式名
	var cla = $("#conBlue").attr("class");
	console.log(cla);

	// attr("class","样式名")	设置元素的样式
	$("#conBlue").attr("class", "green");

	// addClass("样式名")	添加样式
	$("#conBlue").addClass("larger");
	$("#conBlue").addClass("pink");

	// css()	添加具体的样式(添加行内样式)
	$("#conRed").css("font-size", "40px");
	$("#conRed").css({ "font-family": "楷体", "color": "green" });

	// removeClass("样式名")		移除样式
	$("#remove").removeClass("larger");

</script>

8.操作元素的内容

        操作元素的内容

                html()        获取元素的内容,包含 html 标签(非表单元素)

                html(‘’ 内容 ‘’)        设置元素的内容,包含 html 标签(非表单元素)

                text()        获取元素的纯文本内容,不识别html标签(非表单元素)

                text(‘’ 内容 ‘’)        设置元素的纯文本内容,不识别html标签(非表单元素)

                val()        获取元素的值(表单元素)

                val()        设置元素的值(表单元素)

        表单元素:

                 文本框text、密码框password、单选框radio、复选框checkbox、隐藏域hidden、文本域textarea、下拉框select

    非表单元素:

              div、span、h1~h6、table、tr、td、li、p等

script type="text/javascript">
	 	// html("内容")		设置元素的内容,包含html标签(非表单元素)
		$("#html").html("<h2>上海</h2>");
		$("#html2").html("上海");
		// html()			获取元素的内容,包含html标签(非表单元素)
		var html = $("#html").html();
		var html2 = $("#html2").html();
		console.log(html);
		console.log(html2);
		
		
		// text("内容")	 设置元素的纯文本内容,不识别HTML标签(非表单元素)
		//$("#text").text("北京");
		//$("#text2").text("<h2>北京</h2>");
		// text()	获取元素的纯文本内容,不识别HTML标签(非表单元素)
		var txt = $("#text").text();
		var txt2 = $("#text2").text();
		console.log(txt);
		console.log(txt2);
		
		
		// val()			获取元素的值(表单元素)
		var val = $("#op").val();
		console.log(val);
		// 	val("值")		设置元素的值(表单元素)
		$("#op").val("今天天气不错");

9.创建元素和添加元素

创建元素和添加元素:创建元素  $(''  内容 '')

添加元素:

1. 前追加子元素

          指定元素.prepend(内容)      在指定元素内部的最前面追加内容,内容可以是字符串、html元素或jquery对象。

          $(内容).prependTo(指定元素);    把内容追加到指定元素内部的最前面,内容可以是字符串、html元素或jquery对象。

2.后追加子元素

        指定元素.append(内容)     在指定元素内部的最后面追加内容,内容可以是字符串、html 元素或jquery对象

        $(内容).appendTo(指定元素)    把内容追加到指定元素内部的最后面,内容可以是字符串、html 或 jquery对象

3.前追加同级元素

before()  指定元素的前面追加内容

3.后追加同级元素

after()     指定元素的后面追加内容

        注:在添加元素时,如果元素本身不存在(新建的元素),此时会将元素追加到指定位置

                如果元素本身存在(已有的元素),会将原来的元素直接剪切设置到指定位置

script type="text/javascript">
	 	// 创建元素
		var p = "<p>这是一个p标签</p>";
		console.log(p);
		console.log($(p));
		
		/* 添加元素 */
		// 创建元素
		var span = "<span>小奶狗</span>";
		// 得到指定元素,并在元素的内部最前面追加内容
		$(".green").prepend(span);
		var span2 = "<span>小狼狗</span>";
		$(span2).prependTo($(".green"));
		
		var span3 = "<span>小奶狗1</span>";
		var span4 = "<span>小奶狗2</span>";
		$(".green").append(span3);
		$(span4).appendTo($(".green"));
		
		// 将已存在内容追加到指定元素中
		$(".green").append($(".red"));
		
		
		/* 同级追加 */
		var sp1 = "<span class='pink'>女神</span>";
		var sp2 = "<span class='gray'>歌手</span>";
		
		$(".blue").before(sp1);
		$(".blue").after(sp2);
		
	 </script>

10.删除元素

        remove()

                删除元素及其对应的子元素,标签和内容一起删除

                指定元素.remove()

        empty

                清空元素内容,保留标签

                指定元素.empty()

<script type="text/javascript">
	 	// 删除元素
		$(".green").remove();
		// 清空元素
		$(".blue").empty();
		
	 </script>

11.遍历元素

        each()

                $( selector ).each(function(index,element)):遍历元素

                参数 function 为遍历 时的回调函数

                index为遍历元素的序列号,从 0 开始

                element是当前元素,此时是dom元素

<body>
		<h3>遍历元素 each()</h3>
		<span class="green">jquery</span>
		<span class="green">javase</span>
		<span class="green">http协议</span>
		<span class="green">servlet</span>
	</body>
<script type="text/javascript">
	 	// 获取指定元素 并遍历
		$(".green").each(function(index,element){
			console.log(index);
			console.log(element);
			console.log(this);
			console.log($(this));
		});

12.ready加载事件

ready加载事件

        预加载事件

        当页面结构执行加载完毕是后执行

        类似于 js 中 load 事件

        ready 事件可以写多个

        语法:

                $(document).ready(function(){

})

        简写:

                $(function(){

})

	<script src="../js/jquery-3.7.0.js" type="text/javascript" charset="utf-8"></script>
		<script type="text/javascript">
			
			$(function(){
				console.log("ready加载事件...");
			});
			$(document).ready(function(){
				// 获取元素
				console.log($("#p1"));
			});
			

 13.绑定事件

      bind绑定事件

        为被选元素添加一个或多个事件处理程序,并规定事件发生时运行的函数。

        语法:

          $(selector).bind( eventType [, eventData], handler(eventObject));

        ​   eventType :是一个字符串类型的事件类型,就是你所需要绑定的事件。

            [, eventData]:传递的参数,格式:{名:值,名2:值2}

        ​   handler(eventObject):该事件触发执行的函数

        绑定单个事件

          bind绑定

            $("元素").bind("事件类型",fucntion(){

            });

          直接绑定

            $("元素").事件名(function(){

            });

        绑定多个事件

          bind绑定

            1. 同时为多个事件绑定同一个函数

            指定元素.bind("事件类型1 事件类型1 ..",function(){

            });

            2. 为元素绑定多个事件,并设置对应的函数

            指定元素.bind("事件类型",function(){

            }).bind("事件类型",function(){

            });

            3. 为元素绑定多个事件,并设置对应的函数

            指定元素.bind({

              "事件类型":function(){

              },

              "事件类型":function(){

              }

            });

          直接绑定

            指定元素.事件名(function(){

            }).事件名(function(){

              });

<body>
	<h3>bind()方简单的绑定事件</h3>
	<!-- style="cursor:pointer" 设置鼠标图标 -->
	<div id="test" style="cursor:pointer">点击查看名言</div>
	<input id="btntest" type="button" value="点击就不可用了" />
	<hr>
	<button type="button" id="btn1">按钮1</button>
	<button type="button" id="btn2">按钮2</button>
	<button type="button" id="btn3">按钮3</button>
	<button type="button" id="btn4">按钮4</button>
</body>
<script src="../js/jquery-3.7.0.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
	/*
		 1.确定为哪些元素绑定事件
			获取元素
		 2.绑定什么事件(事件类型)
			第一个参数:事件的类型
		 3.相应事件触发的,执行的操作
			第二个参数:函数
	 * */
	/* 绑定单个事件 */
	$("#test").bind("click", function () {
		console.log("世上无难事,只怕有心人");
	});
	// 原生js绑定事件
	/* document.getElementById("test").onclick = function(){
		console.log("test...");
	} */
	// 直接绑定
	$("#btntest").click(function () {
		// 禁用按钮
		console.log(this);
		$(this).prop("disabled", true);
	});

	/* 绑定多个事件 */
	// 1. 同时为多个事件绑定同一个函数
	$("#btn1").bind("click mouseout", function () {
		console.log("按钮1...");
	});

	// 2. 为元素绑定多个事件,并设置对应的函数
	$("#btn2").bind("click", function () {
		console.log("按钮2被点击了...");
	}).bind("mouseout", function () {
		console.log("按钮2移开了...");
	});

	// 3. 为元素绑定多个事件,并设置对应的函数
	$("#btn3").bind({
		"click": function () {
			console.log("按钮3被点击了...");
		},
		"mouseout": function () {
			console.log("按钮3移开了...");
		}
	});

	// 直接绑定
	$("#btn4").click(function () {
		console.log("按钮4被点击了...");
	}).mouseout(function () {
		console.log("按钮4移开了...");
	});

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

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

相关文章

使用chartgtp写Android代码

<LinearLayout android:layout_width"match_parent" android:layout_height"match_parent" android:orientation"horizontal"> <TextView android:id"id/姓名" …

FME教程:批量提取面要素图形的拐点坐标到Excel,其他类型图形的坐标提取、输出可参考本文方法

目录 一、提取成果 二、实现过程 1.读取数据 2.分离内外边界 3.提取坐标 4.获取边界序号 5.坐标处理 6.数据输出 三、总结 今天给大家介绍使用FME提取几何图形拐点坐标&#xff0c;并输出到Excel中的案例。这里以shapefile格式&#xff0c;且内部存在环洞的面要素为例…

linux nohup命令如何使用?

Linux nohup 命令 nohup 英文全称 no hang up&#xff08;不挂起&#xff09;&#xff0c;用于在系统后台不挂断地运行命令&#xff0c;退出终端不会影响程序的运行。 nohup 命令&#xff0c;在默认情况下&#xff08;非重定向时&#xff09;&#xff0c;会输出一个名叫 nohup…

低价乱价问题怎么处理

消费者遇到商品价格混乱的时候&#xff0c;选择不购买即可&#xff0c;但是品牌商遇到线上低价、乱价的局面又怎么办呢&#xff0c;不处理当然是不可以的。品牌放任低价、乱价不管的后果就是&#xff0c;经销商流失、顾客流失、品牌价值受损。那品牌应如何解决低价问题呢。 什么…

《嵌入式存储器架构、电路与应用》----学习记录(二)

第3章 嵌入式动态随机存储器 6T SRAM存储单元由六个晶体管组成&#xff0c;单元面积相对较大。为了增加存储密度&#xff0c;eDRAM是SRAM最具有潜力的替代品&#xff0c;根据存储单元不同分类&#xff1a; 传统的单晶体管单电容的(1T1C)eDRAM&#xff0c;其存储单元由一种特殊…

Redis的缓存过期淘汰策略

Redis的缓存过期淘汰策略 一 面试题引入二 Redis内存满了怎么办&#xff1f;2.1 redis默认内存多少&#xff1f;在哪里查看&#xff1f;如何设置修改&#xff1f;2.2 如果Redis内存使用超出了设置的最大值会怎样&#xff1f; 三 Redis里的数据怎么没的&#xff1f;它如何删除呢…

智能出行 驱动未来|2023 开放原子全球开源峰会 CARSMOS 开源智能出行生态年会即将启幕

由开放原子开源基金会主办&#xff0c;元遨 / CARSMOS 开源智能出行项目组协办&#xff0c;深信科创、Futurewei Technologies、Open Motors、北极雄芯等单位共同承办的 2023 开放原子全球开源峰会 “CARSMOS 开源智能出行生态年会” 将于 6 月 12 日在北京经开区北人亦创国际会…

chatgpt赋能python:Python函数:降低编程复杂度的利器

Python函数&#xff1a;降低编程复杂度的利器 编写高效且易于维护的代码&#xff0c;是每个开发者都追求的目标。Python函数在实现这个目标中起着至关重要的作用。通过函数&#xff0c;我们可以将程序分解为更小的代码块&#xff0c;以简化代码逻辑和降低复杂度。本文将介绍Py…

C++服务器框架开发7——日志系统LogFormatter_2

该专栏记录了在学习一个开发项目的过程中遇到的疑惑和问题。 其教学视频见&#xff1a;[C高级教程]从零开始开发服务器框架(sylar) 上一篇&#xff1a;C服务器框架开发6——日志系统logFormatter/size_t学习 C服务器框架开发7——日志系统LogFormatter_2 目前进度 目前进度 学…

Java程序设计入门教程--随机类Random

随机数的类 在程序设计中&#xff0c;经常都需要产生一些随机数&#xff0c;比如模拟随机抽奖、抽样等。 Random类在java.util包中&#xff0c;是专门用于提供生成一个随机数的类&#xff0c;随机数的生成相关方法都在该内中。比如Random类的nextInt方法需要一int型值作为参数&…

【生信】R语言在RNA-seq中的应用

R语言在RNA-seq中的应用 文章目录 R语言在RNA-seq中的应用生成工作流环境读取和处理数据由targets文件提供实验定义对实验数据进行质量过滤和修剪生成FASTQ质量报告 比对建立HISAT2索引并比对 读长量化读段计数样本间的相关性分析 差异表达分析运行edgeR可视化差异表达结果计算…

11.Ansible Roles介绍

什么是Ansible角色&#xff1f; 就像在现实世界中给不同的人分配角色一样,让他们成为医生工程师, 宇航员, 警察,或者厨师&#xff61;在Ansible的世界里, 你可以给服务器分配角色,让它们成为数据库服务器&#xff64; Web服务器&#xff64; Redis消息服务器或备份服务器&#…

LCUSB-13xB/M 系列高性能 USB 接口 CAN 卡在医疗体外诊断仪上的应用

1&#xff0c;LCUSB -13xB/M 系列高性能 USB 接口 CAN 卡的功能介绍 LCUSB -13xB/M 系列高性能 USB 接口 CAN 卡&#xff0c;坚固 金属外壳&#xff0c;具有更佳 EMC 性能&#xff0c;插到用户设备 USB 接口 上&#xff0c;快速扩展出 1~2 路 CAN 通道&#xff0c;可作为组件集…

java基础学习

一、注释 1&#xff09;当行注释 // 2&#xff09;多行注释 /* ... */ 3&#xff09;文档注释 &#xff08;java特有&#xff09; /** author 张三 version v1.0 这是文档注释&#xff0c;需要将class用public修饰 */ 二、关键字 &#xff08;1&#xff09;48个关键…

tinker CAD入门操作

入门 - 导航和菜单 欢迎来到设计世界&#xff01; 设计是发现所有尚未完成的东西的艺术。它是学习和教学&#xff0c;打破和制造&#xff0c;看到和展示的平等部分。 设计就是分享&#xff01; Tinkercad是一款功能强大且易于使用的工具&#xff0c;用于创建数字设计&#xff0…

CVE-2023-33246 Apache RocketMQ RCE

0x01 漏洞介绍 Apache RocketMQ是一款开源的分布式消息和流处理平台&#xff0c;提供了高效、可靠、可扩展的低延迟消息和流数据处理能力&#xff0c;广泛用于异步通信、应用解耦、系统集成以及大数据、实时计算等场景。 漏洞的官方描述为当RocketMQ多个组件&#xff0c;包括N…

chatgpt赋能python:Python分三行输入:提高编程效率的绝佳方法

Python分三行输入&#xff1a;提高编程效率的绝佳方法 Python是一种高级编程语言&#xff0c;以简洁、易读的代码著称。Python分三行输入是一种旨在提高编程效率的技术&#xff0c;它可以减少代码阅读时间、降低语法错误率&#xff0c;并且让代码更加易于维护。在本文中&#…

0501源码分析-启动过程-springboot2.7.x系列

文章目录 1前言2 启动第一阶段2.1 deduceFromClasspath 推断应用类型2.2 getSpringFactoriesInstances(Class)2.3 ApplicationContextInitializer2.4 ApplicationListener2.5 自定义接口实现配置示例 3 启动第二阶段3.1 SpringApplicationRunListener3.2 容器创建和准备 4 总结…

11. 数据结构之二叉树

前言 上一节&#xff0c;简单概述了树这种数据结构&#xff0c;以及树结构向下&#xff0c;具有某些一些特征的树&#xff0c;比如二叉树&#xff0c;B树&#xff0c;B树&#xff0c;堆等。其中&#xff0c;二叉树是一个很重要的模块。也是在一些技术面试中&#xff0c;可能会…

【Vue】学习笔记-Vuex

Vuex 理解VuexVuex是什么什么时候使用VuexVuex 工作原理图求和案例使用纯vue编写 搭建Vuex环境使用Vuex编写求和案例getters配置项四个map方法的使用多组件共享数据案例模块化命名空间 理解Vuex Vuex是什么 概念&#xff1a;专门在vue中实现集中式状态(数据) 管理的一个vue插…