js/jQuery常见操作 之 jQuery操作复选框的常见问题

js/jQuery常见操作 之 jQuery操作复选框的常见问题

  • 1. js/jQuery的其他一些常见基础操作
  • 2. 全选/全不选问题
    • 2.1 效果
    • 2.2 实现代码
      • 2.2.1 简单js实现
      • 2.2.2 jQuery实现
        • 2.2.2.1 注意语法(区别jQuery版本)
        • 2.2.2.2 完整代码实现
  • 3. jQuery实现点击 行tr 实现checkBox选中 + 翻页勾选问题
    • 3.1 jQuery实现点击 行tr 获取td中checkBox的值
      • 3.1.1 方式1
      • 3.1.2 方式2
    • 3.2 jQuery实现点击 行tr 实现checkBox选中或取消
      • 3.2.1 点击 tr 时,checkbox选中或取消
      • 3.2.2 点击 首行tr 时,实现全选或全不选
      • 3.2.3 点击非首行tr时(数据列表行),全选或全不选自动切换
    • 3.3 翻页勾选问题
    • 3.4 附上述操作tr的全代码

1. js/jQuery的其他一些常见基础操作

  • js/jQuery 的一些常用操作(js/jQuery获取表单元素值 以及 清空元素值的各种实现方式)——附测试例子,拿来即能实现效果.

2. 全选/全不选问题

2.1 效果

  • 如下:
    在这里插入图片描述

2.2 实现代码

2.2.1 简单js实现

  • 如下:
    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8">
    		<title></title>
    	</head>
    	<body>
    		
    		<form method="post" action="">
    			
    			您想饲养的狗狗有?
    			<input type="checkbox" id="checkAllOrNo"/>全选/全不选
    			 
    			<br />
    			<input type="checkbox" name="items" value="边牧"/>边牧
    			<input type="checkbox" name="items" value="柯基"/>柯基
    			<input type="checkbox" name="items" value="秋田犬"/>秋田犬
    			<input type="checkbox" name="items" value="金毛"/>金毛
    			
    			<br />
    			<input type="button" id="checkAll" value="全选"/>
    			<input type="button" id="checkNoOne" value="全不选"/>
    			<input type="button" id="fanxuan" value="反选"/>
    			<input type="button" id="btnAllOrNO" value="全选/全不选"/>
    			<input type="button" id="commit" value="提交"/>
    			
    		</form>
    		
    		<script type="text/javascript">
    			
    			//1. 全选
    			var all = document.getElementById("checkAll");
    			function funAll(){
    				var box = document.getElementsByName("items");
    				for(var i =0;i<box.length;i++){
    					// alert(box[i].value);
    					box[i].checked = true;
    				}
    			}
    			all.onclick = funAll;
    			
    			//2.全不选
    			var allNo = document.getElementById("checkNoOne");
    			function funAllNo(){
    				var box = document.getElementsByName("items");
    				for(var i =0;i<box.length;i++){
    					box[i].checked = false;
    				}
    			}
    			allNo.onclick = funAllNo;
    			
    			//3.反选(直接取反)
    			var fan = document.getElementById("fanxuan");
    			fan.onclick = function(){
    				var box = document.getElementsByName("items");
    				for(var i =0;i<box.length;i++){	
    					// if(box[i].checked == false){
    					// 	box[i].checked = true;
    					// }else{
    					// 	box[i].checked = false;
    					// }
    					//可以将整个if else优化为,如下:
    					box[i].checked = !box[i].checked;//直接取反
    				}
    			}
    			
    			//4.全选/全不选----按钮操作
    			var btn_check_all = document.getElementById("btnAllOrNO");
    			btn_check_all.onclick = function(){
    				var boxes = document.getElementsByName("items");
    				var flag = false;//false-全不选  true-全选
    				for(var i =0; i<boxes.length; i++){
    					if(boxes[i].checked == false){
    						flag = true;//只要存在没有选中的话,就进行反选
    						break;
    					}
    				}
    				// alert(flag);
    				if(flag){
    					//执行全选函数
    					funAll();
    				}else{
    					//执行全不选函数
    					funAllNo();
    				}
    			}
    			
    			//5 全选/全不选——复选框操作
    			//5.1 点击全选复选框
    			var checkAllOrNo_2 = document.getElementById("checkAllOrNo");//复选框全选/全不选
    			checkAllOrNo_2.onclick = function(){
    				var box = document.getElementsByName("items");
    				for(var i =0; i<box.length; i++){
    					box[i].checked = this.checked;//即:选中状态与全选/全不选的复选框保持一致即可
    				}
    			}
    			
    			//5.2 点击各项目复选框
    			var boxAll_2 = document.getElementsByName("items");
    			for(var i=0;i<boxAll_2.length;i++){
    				boxAll_2[i].onclick = function(){
    					checkAllOrNo_2.checked = true;//点击任何一个复选框,全选复选框都先设置为选中状态
    					for(var i=0; i<boxAll_2.length; i++){
    						if(boxAll_2[i].checked == false){
    							//只要有没有选中,全选复选框就设置未选中
    							checkAllOrNo_2.checked = false;
    							break;
    						}
    					}
    				}
    			}
    			
    			//6.提交 获取选中的复选框
    			var data = document.getElementById("commit");
    			data.onclick = function(){
    				var box = document.getElementsByName("items");
    				var commmitData = "";
    				for(var i =0; i<box.length; i++){
    					if(box[i].checked == true ){
    						commmitData += box[i].value + ",";
    					}
    				}
    				var resultData = commmitData.substring(0,commmitData.length-1);
    				alert(resultData);
    			}
    			
    		</script>
    		
    		
    	</body>
    </html>
    

2.2.2 jQuery实现

2.2.2.1 注意语法(区别jQuery版本)
  • 下面以全选为例,如下:
    • 复杂写法:
      //1. 全选---复杂点写法
      var all = document.getElementById("checkAll");
      function funAll(){
      	// 1.1 循环处理
      	$("input[name='items']").each(function(){
      		// 下面两种写法高低版本的jQuery均可以
      		// $(this).attr("checked",true); 
      		this.checked = true;
      
      		// prop 适合高版本的jQuery
      		//$(this).prop("checked",true);
               	});
      	// 1.2 直接根据name处理
      	// $("input[name='items']").attr("checked", true);
      
      	// 注意:prop 适合高版本的jQuery
      	// $("input[name='items']").prop("checked", true); 
      }
      all.onclick = funAll;
      
    • 优化写法:
      $("#checkAll").click(function(){
      	$("input[name='items']").attr("checked", true);
      });
      
  • 再以全选/全不选为例(非按钮的情况),如下:
    • 点击 全选/全不选 ——复杂点逻辑:
      //5.1.1 点击 全选/全不选 复选框---使用多层this
      $("#checkAllOrNo").click(function(){
      	var parentFlag = this.checked;
      	$("input[name='items']").each(function(){
      		this.checked = parentFlag;
      	});
      });
      
    • 点击 全选/全不选 ——简单点逻辑
      //5.1.2 点击 全选/全不选 复选框----使用s(":checked")
      $("#checkAllOrNo").click(function(){
      	$("input[name='items']").each(function(){
      		this.checked = $("#checkAllOrNo").is(":checked");
      	});
      });
      
    • 点击各项目:
      //5.2 点击各项目复选框
      $("input[name='items']").each(function(){
      	$(this).click(function(){
      		// 点击任何一个复选框,全选/不全选 复选框都先设置为选中状态
      		$("#checkAllOrNo").attr("checked",true);
      		// 然后再循环所有的复选框,是否有未选中的
      		$("input[name='items']").each(function(){
      			if(!this.checked){
      				$("#checkAllOrNo").attr("checked",false);
      				return;
      			}
      		});
      	});
      });
      
  • 关于jQuery版本的一些可以看下面的文章,3.6中有介绍,
    js/jQuery 的一些常用操作(js/jQuery获取表单元素值 以及 清空元素值的各种实现方式)——附测试例子,拿来即能实现效果.
2.2.2.2 完整代码实现
  • 各情况代码,如下:
    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8">
    		<title></title>
    		<!-- <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.7.1/jquery.js"></script> -->
    		<script src="https://cdn.bootcdn.net/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
    
    	</head>
    	<body>
    		
    		<form method="post" action="">
    			
    			您想饲养的狗狗有?
    			<input type="checkbox" id="checkAllOrNo"/>全选/全不选
    			 
    			<br />
    			<input type="checkbox" name="items" value="边牧"/>边牧
    			<input type="checkbox" name="items" value="柯基"/>柯基
    			<input type="checkbox" name="items" value="秋田犬"/>秋田犬
    			<input type="checkbox" name="items" value="金毛"/>金毛
    			
    			<br />
    			<input type="button" id="checkAll" value="全选"/>
    			<input type="button" id="checkNoOne" value="全不选"/>
    			<input type="button" id="fanxuan" value="反选"/>
    			<input type="button" id="btnAllOrNO" value="全选/全不选"/>
    			<input type="button" id="commit" value="提交"/>
    			
    		</form>
    		
    		<script type="text/javascript">
    			
    			//1. 全选---复杂点写法
    			var all = document.getElementById("checkAll");
    			function funAll(){
    				// 1.1 循环处理
    				$("input[name='items']").each(function(){
    					// 下面两种写法高低版本的jQuery均可以
    					// $(this).attr("checked",true); 
    					this.checked = true;
    
    					// prop 适合高版本的jQuery
    					//$(this).prop("checked",true);
                	});
    				// 1.2 直接根据name处理
    				// $("input[name='items']").attr("checked", true);
    
    				// 注意:prop 适合高版本的jQuery
    				// $("input[name='items']").prop("checked", true); 
    			}
    			// all.onclick = funAll;
    
    			// 1. 全选---简单点写法
    			$("#checkAll").click(function(){
    				$("input[name='items']").attr("checked", true);
    			});
    			
    			//2.全不选
    			$("#checkNoOne").click(function(){
    				$("input[name='items']").attr("checked", false);
    			});
    			
    			//3.反选(直接取反)
    			$("#fanxuan").click(function(){
    				$("input[name='items']").each(function(){
    					this.checked = !(this.checked);//直接取反
    				});
    			});
    			
    			//4.全选/全不选----按钮操作
    			$("#btnAllOrNO").click(function(){
    				var selectedNum = 0;//0-全不选  >0-全选
    				$("input[name='items']:not(:checked)").each(function(){
    					selectedNum ++;//计算没有选中的项目个数
    				});
    				if(selectedNum > 0){
    					// 只要存在没有选中的话,就进行全选
    					$("input[name='items']").attr("checked", true);
    				}else{
    					// 全不选
    					$("input[name='items']").attr("checked", false);
    				}
    			});
    			
    			//5 全选/全不选——复选框操作
    			//5.1.1 点击 全选/全不选 复选框---使用多层this
    			// $("#checkAllOrNo").click(function(){
    			// 	var parentFlag = this.checked;
    			// 	$("input[name='items']").each(function(){
    			// 		this.checked = parentFlag;
    			// 	});
    			// });
    
    			//5.1.2 点击 全选/全不选 复选框----使用s(":checked")
    			$("#checkAllOrNo").click(function(){
    				$("input[name='items']").each(function(){
    					// 选中状态与 全选/全不选 的复选框保持一致即可
    					this.checked = $("#checkAllOrNo").is(":checked");
    				});
    			});
    
    			//5.2 点击各项目复选框
    			$("input[name='items']").each(function(){
    				$(this).click(function(){
    					// 点击任何一个复选框,全选/不全选 复选框都先设置为选中状态
    					$("#checkAllOrNo").attr("checked",true);
    					// 然后再循环所有的复选框,是否有未选中的
    					$("input[name='items']").each(function(){
    						if(!this.checked){
    							$("#checkAllOrNo").attr("checked",false);
    							return;
    						}
    					});
    				});
    			});
    			
    			//6.提交 获取选中的复选框
    			// 6.1 拼接字符串写法
    			$("#commit").click(function(){
    				var commmitData = "";
    				$("input[name='items']:checked").each(function(){
    					commmitData += $(this).val() + ",";
    				});
    				var resultData = commmitData.substring(0,commmitData.length-1);
    				alert(resultData);
    			});
    
    			// 6.2 数组写法
    			$("#commit").click(function(){
    				var commmitData = [];
    				$("input[name='items']:checked").each(function(){
    					commmitData.push($(this).val());
    				});
    				alert(commmitData);
    			});
    			
    		</script>
    		
    	</body>
    </html>
    

3. jQuery实现点击 行tr 实现checkBox选中 + 翻页勾选问题

3.1 jQuery实现点击 行tr 获取td中checkBox的值

3.1.1 方式1

  • 实现代码如下:
    // 1.1 点击tr获取tr中是checkbox的td的值----方式1
    $("#dogs_data tr").each(function(){
        var current = $(this);
        current.click(function(){
            var box = $(this).find(":checkbox");
            console.log(box);
            console.log(box.val());
        });
    });
    
  • 效果如下:
    在这里插入图片描述

3.1.2 方式2

  • 实现代码,如下:
    // 1.2 点击tr获取tr中是checkbox的td的值----方式2
    $("#dogs_data tr").each(function(){
        $(this).click(function(){
            var box = this.firstElementChild.firstElementChild;//获取checkbox元素标签
            console.log(box);
            console.log(box.value);//因为是标签,取值用.value
        });
    });
    
  • 实现效果,如下:
    在这里插入图片描述

3.2 jQuery实现点击 行tr 实现checkBox选中或取消

3.2.1 点击 tr 时,checkbox选中或取消

  • 实现代码,如下:
    $("#dogs_data tr").each(function(){
        $(this).click(function(){
            var box = this.firstElementChild.firstElementChild;//获取checkbox元素标签
            box.checked = !box.checked;// 直接取反
        });
    });
    
  • 实现效果,如下:
    在这里插入图片描述

3.2.2 点击 首行tr 时,实现全选或全不选

  • 实现代码如下:
    // 2.2 点击首行tr时(表头),实现全选或全不选
    $("#dogs_data tr:eq(0)").each(function(){
        $(this).click(function(){
            var box = this.firstElementChild.firstElementChild;//获取checkbox元素标签
            box.checked = !box.checked;// 直接取反
            $("input[name='dogIds']").each(function(){
                this.checked = box.checked;// 数据行的选中状态与首行的选中状态保持一致
            });
        });
    });
    
  • 实现效果如下:
    在这里插入图片描述

3.2.3 点击非首行tr时(数据列表行),全选或全不选自动切换

  • 实现代码如下:
    // 2.3 点击非首行tr时(数据列表行),全选或全不选自动切换
    $("#dogs_data tr:gt(0)").each(function(){
        $(this).click(function(){
            var box = this.firstElementChild.firstElementChild;//获取checkbox元素标签
            box.checked = !box.checked; // 数据行直接取反
            $("#checkAllOrNo").attr("checked",true);// 数行先设置选中
    
            // 然后循环数据行的checkbox,如果有未选中的,取消首行选中(为了少循环次数,直接从not(:checked)中循环)
            $("input[name='dogIds']:not(:checked)").each(function(){
                $("#checkAllOrNo").attr("checked",false);// 如果存在任意一个未选中,直接取消选中
                return;
            });
        });
    });
    
  • 效果如下(不是视频,不是很明显,需要的还需自己测试):
    在这里插入图片描述

3.3 翻页勾选问题

  • 如果想,支持翻页勾选,那就把每次勾选的缓存在页面中的一个输入框里,然后勾选一个追加一个,这个参考上面取值的方式直接拼接即可实现,此处就不再多说了。

3.4 附上述操作tr的全代码

  • 如下:
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <!-- <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.7.1/jquery.js"></script> -->
        <script src="https://cdn.bootcdn.net/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
    
        <style>
            table {
                border-collapse: collapse;
            }
            table tr th,td{
                border: 1px solid;
                width: 60px;
                text-align: center;
            }
    
            thead tr:hover{
                background-color: rgb(255, 127, 127);
            }
            tbody tr:hover{
                background-color: aquamarine;
            }
        </style>
    </head>
    <body>
    
    
    
        <table celllspacing="0" id="dogs_data">
            <thead>
                <tr>
                    <th>
                        <input type="checkbox" id="checkAllOrNo" />
                    </th>
                    <th>编号</th>
                    <th>姓名</th>
                    <th>年龄</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <td>
                        <input type="checkbox" name="dogIds" value="A1001"/>
                    </td>
                    <td>A1001</td>
                    <td>麦兜</td>
                    <td>3</td>
                </tr>
                <tr>
                    <td>
                        <input type="checkbox" name="dogIds" value="A1002"/>
                    </td>
                    <td>A1002</td>
                    <td>贝塔</td>
                    <td>2</td>
                </tr>
                <tr>
                    <td>
                        <input type="checkbox" name="dogIds" value="A1003"/>
                    </td>
                    <td>A1003</td>
                    <td>泡泡</td>
                    <td>6</td>
                </tr>
            </tbody>
        </table>
    
        <script>
            // 1.1 点击tr获取tr中是checkbox的td的值----方式1
            // $("#dogs_data tr").each(function(){
            //     var current = $(this);
            //     current.click(function(){
            //         var box = $(this).find(":checkbox");
            //         console.log(box);
            //         console.log(box.val());
            //     });
            // });
    
            // 1.2 点击tr获取tr中是checkbox的td的值----方式2
            // $("#dogs_data tr").each(function(){
            //     $(this).click(function(){
            //         var box = this.firstElementChild.firstElementChild;//获取checkbox元素标签
            //         console.log(box);
            //         console.log(box.value);// 因为是标签,取值用.value
            //     });
            // });
    
            // 2.1 点击 行tr 实现checkBox选中或取消
            // $("#dogs_data tr").each(function(){
            //     $(this).click(function(){
            //         var box = this.firstElementChild.firstElementChild;//获取checkbox元素标签
            //         box.checked = !box.checked;// 直接取反
            //     });
            // });
    
            // 2.2 点击首行tr时(表头),实现全选或全不选
            $("#dogs_data tr:eq(0)").each(function(){
                $(this).click(function(){
                    var box = this.firstElementChild.firstElementChild;//获取checkbox元素标签
                    box.checked = !box.checked;// 直接取反
                    $("input[name='dogIds']").each(function(){
                        this.checked = box.checked;// 数据行的选中状态与首行的选中状态保持一致
                    });
                });
            });
    
            // 2.3 点击非首行tr时(数据列表行),全选或全不选自动切换
            $("#dogs_data tr:gt(0)").each(function(){
                $(this).click(function(){
                    var box = this.firstElementChild.firstElementChild;//获取checkbox元素标签
                    box.checked = !box.checked; // 数据行直接取反
                    $("#checkAllOrNo").attr("checked",true);// 数行先设置选中
    
                    // 然后循环数据行的checkbox,如果有未选中的,取消首行选中(为了少循环次数,直接从not(:checked)中循环)
                    $("input[name='dogIds']:not(:checked)").each(function(){
                        $("#checkAllOrNo").attr("checked",false);// 如果存在任意一个未选中,直接取消选中
                        return;
                    });
                });
            });
    
        </script>
    </body>
    </html>
    

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

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

相关文章

SCADA软件工具有多少免费的?

随着工业自动化的飞速发展&#xff0c;SCADA系统已经成为工业领域智能化转型绕不开的重要工具&#xff0c;不少个人和公司也都加入到了学习研究SCADA系统的队伍中。数维图小编耗费大量时间整理了国内外免费&#xff08;非完全免费&#xff09;的SCADA软件工具&#xff0c;有部分…

uniapp 之 短信验证码登录

一、需求 输入手机号码&#xff0c;可以获取验证码。 二、实现效果 点击前&#xff1a; 点击后&#xff1a; 三、代码实现 <template><view class"login"><view class"infobox"><view class"item"><input type…

搜索推荐技术-爱奇艺搜索引擎技术

一、爱奇艺的搜索引擎框架示意图 即通过召回系统&#xff0c;即基于文本匹配的matching system&#xff0c;得到大量视频资源的候选集&#xff0c;经过粗排和精排&#xff0c;最后返回给用户。重点在于召回模块和排序模块。 二、召回模块 召回模块比较重要的是基础相关性&am…

vue3 + mark.js 实现文字标注功能

效果图 安装依赖 npm install mark.js --save-dev npm i nanoid代码块 <template><!-- 文档标注 --><header><el-buttontype"primary":disabled"selectedTextList.length 0 ? true : false"ghostclick"handleAllDelete"…

MySQL数据库,函数与分组

单行函数&#xff1a; 操作数据对象 接受参数返回一个结果 只对一行进行变换 每行返回一个结果 可以嵌套 参数也可以是一列或一个值 数值函数 基本函数&#xff1a; 注&#xff1a;ROUND(x,y)函数的y是负数时&#xff0c;即往高位进行四舍五入&#xff0c;如-3就是按百位…

机器学习 类别特征编码:Category Encoders 库的使用

✅作者简介&#xff1a;人工智能专业本科在读&#xff0c;喜欢计算机与编程&#xff0c;写博客记录自己的学习历程。 &#x1f34e;个人主页&#xff1a;小嗷犬的个人主页 &#x1f34a;个人网站&#xff1a;小嗷犬的技术小站 &#x1f96d;个人信条&#xff1a;为天地立心&…

优雅提效:Guava的字符串处理工具

第1章&#xff1a;引言 大家好&#xff0c;我是小黑&#xff0c;今天咱们要聊一聊Google Guava这个超棒的Java库&#xff0c;尤其是它的字符串处理工具。对于Java程序员来说&#xff0c;字符串处理是日常工作的一部分&#xff0c;而Guava在这方面提供了非常强大的支持。使用Gu…

12.7_黑马数据结构与算法Java

030 单向链表 get 不会提前拿到所有的索引值&#xff0c;这样维护起来非常不方便。因此&#xff0c;我们是在遍历的时候得到他的索引值 %d&#xff1a;数字的占位符就是用百分号d表示 %n&#xff1a;换行符 thinking:String.format()? String.format()的详细用法_七月J的博客-…

大数据在互联网营销中的应用:案例与策略

互联网时代的营销领域正经历着一场由大数据驱动的变革。在2023年&#xff0c;大数据的应用已成为推动市场策略和决策的关键因素。本文将探讨大数据如何影响互联网营销&#xff0c;并通过实际案例分析展示其在提升营销效果方面的作用。 首先&#xff0c;通过分析海量数据&#x…

如何配置Modbus转Profinet网关与6台232 Modbus伺服通信

Modbus转Profinet网关连接6台232 Modbus伺服同时控制的解决方案不仅简化了设备连接&#xff0c;还减少了人力投入和维护成本。通过Modbus转Profinet网关&#xff0c;操作人员只需对Profinet网关进行设置和监控&#xff0c;即可实现对6台232 Modbus伺服的集中控制。 Modbus转Pro…

中山大学李华山、王彪课题组开发 SEN 机器学习模型,高精度预测材料性能

内容一览&#xff1a;了解全局晶体对称性并分析等变信息&#xff0c;对于预测材料性能至关重要&#xff0c;但现有的、基于卷积网络的算法尚且无法完全实现这些需求。针对于此&#xff0c;中山大学的李华山、王彪课题组&#xff0c;开发了一款名为 SEN 的机器学习模型&#xff…

史上最强 Charles 抓包

&#x1f4e2;专注于分享软件测试干货内容&#xff0c;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff01;&#x1f4e2;交流讨论&#xff1a;欢迎加入我们一起学习&#xff01;&#x1f4e2;资源分享&#xff1a;耗时200小时精选的「软件测试」资…

Python中如何判断List中是否包含某个元素

更多资料获取 &#x1f4da; 个人网站&#xff1a;ipengtao.com 在Python中&#xff0c;判断一个列表&#xff08;List&#xff09;是否包含某个特定元素是常见的任务之一。在本文中&#xff0c;将深入探讨多种判断List成员包含性的方法&#xff0c;并提供丰富的示例代码&…

嵌入式工程师校招经验与学习路线总结

前言&#xff1a;不知不觉2023年秋招已经结束&#xff0c;作者本人侥幸于秋招中斩获数十份大差不差的OFFER&#xff0c;包含&#xff1a;Top级的AIGC&#xff0c;工控龙头&#xff0c;国产MCU原厂&#xff0c;医疗器械&#xff0c;新能源车企等。总而言之&#xff0c;秋招总体情…

量子纠缠通讯:未来信息技术的革新者

量子纠缠通讯:未来信息技术的革新者 引言 在科技日新月异的今天,我们正逐步走进一个全新的科技时代——量子时代。量子纠缠通讯作为量子技术的重要分支,以其独特的优势和巨大的潜力,成为了当今世界研究的热点。本文将带您深入探讨量子纠缠通讯的奥秘,了解其原理、优势、…

架构师-3.用户体系

系统提供了 2 种类型的用户,分别满足对应的管理后台、用户 App 场景。 1.AdminUser 管理员用户,前端访问 s-ui-admin-vue3管理后台,后端访问 /admin-api/** RESTful API 接口。 2.MemberUser 会员用户,前端访问 s-ui-user用户 App,后端访问 /app-api/** RESTful API 接口。…

Java中lambda表达式的使用

&#x1f495;"我不要麻木的死去"&#x1f495; 作者&#xff1a;Mylvzi 文章主要内容&#xff1a;Java中lambda表达式的使用 一.背景 lambda表达式是Java SE 8中一个重要的新特性&#xff0c;允许你使用一个表达式来代替功能接口。lambda表达式可以看作一个没有返…

基于SpringBoot+Vue实现的小区物业管理系统

文章目录 系统介绍技术选型成果展示账号地址及其他说明 系统介绍 基于SpringBootVue实现的小区物业管理系统是为物业管理打造的一款在线管理平台&#xff0c;它可以实时完成信息处理&#xff0c;对小区信息、住户等进行在线管理&#xff0c;使其系统化和规范化。 系统功能说明…

架构师一1.功能权限

1. RBAC 权限模型 系统采用 RBAC 权限模型&#xff0c;全称是 Role-Based Access Control 基于角色的访问控制。 简单来说&#xff0c;每个用户拥有多个角色&#xff0c;每个角色拥有多个菜单&#xff0c;菜单中存在菜单权限、按钮权限。这样&#xff0c;就形成了 “用户<-…

画好一张规范的原理图,这些点你可要注意了!

不光是代码有可读性的说法&#xff0c;原理图也有。很多时候原理图不仅仅是给自己看的&#xff0c;也会给其它人看&#xff0c;如果可读性差&#xff0c;会带来一系列沟通问题。所以&#xff0c;要养成良好习惯&#xff0c;做个规范的原理图。此外&#xff0c;一个优秀的原理图…