JavaWeb学习笔记之JavaScript
JavaWeb学习笔记之JavaScript
文章目录
Javascript的介绍
js特点:
javscript与java的区别
javascript的组成(三部分)
js与html的两种结合方式
js的原始类型和声明变量
js语句
js的运算符
js的数组
js的函数
js的全局变量和局部变量
js中的常见对象
string对象
Array对象
Date对象
Math对象
全局函数
js中的bom和dom对象
bom的对象
dom的对象
DHTML
document对象
element对象
Node对象
innerHTML
相关知识: https://blog.csdn.net/mokexfdgh/article/category/8092196
Javascript的介绍
Javascript:基于对象和事件驱动的语言,应用与客户端(脚本语言) 基于对象->提供好了很多对象,可以直接拿过来使用 事件驱动->html做网站静态效果,js动态效果 客户端:专门指的是浏览器 注:浏览器中的控制台可以调试js代码(区分大小写,html不区分)
js特点:
交互性->信息的动态交互 安全性->js不能访问本地磁盘的文件 跨平台性->支持js的浏览器都可以运行
javscript与java的区别
(1)不同公司开发的,是不用的语言 (2)js是基于对象的,Java是面向对象 //?对象和面向对象的区别 (3)java是强类型的语言,js是弱类型的语言 (4)js只需要解析就可以执行,而java需要先编译成字节码文件,再执行
javascript的组成(三部分)
(1)ECMScript ECMA:欧洲计算机协会 由ECMA组织指定的js的语法,语句… (2)BOM brower object model:浏览器对象模型 (3)DOM document objct model:文档对象模型
js与html的两种结合方式
1.使用一个标签
< script type = " text/javascript" >
alert ( "弹窗" ) ;
script>
2.使用script标签,引入一个外部的js文件(此时script标签里的代码不会执行,只执行js文件的代码)
< script type = " text/javascript" src = " 1.js" > script>
scpript标签的位置:一般放在
后面,以免产生对象为空的错误(浏览器还未解析到js中所使用的对象的哪一行)
js的原始类型和声明变量
1.原始类型:string(字符串),number(数字类型),boolean(true和false) null:获取对象的引用,null表示对象引用为空,所有对象的引用也是Object undifined:定义一个未赋值的变量 2.定义变量关键字:var typeof()运算符:可以查看变量的类型
< script type = " text/javascript" >
var str = "abc" ;
var mm = 123 ;
var flag = true ;
var date = new Data ( ) ;
var x;
alert ( typeof ( str) ) ;
script>
js语句
if判断语句(同java中的if-else语句) switch语句(js中switch支持所有的原始类型,区别于java)
switch(a){
case:1
alert("2");
case:2
alert("2");
default:
alert("other");
}
循环语句(for,while)
while(i>1){
alert(i);
i--;//i++和++i与java中的一样
}
for(var mm=0;mm<=5;mm++){
alert(mm);
}
js的运算符
基本操作和java相同,以下为不同的地方: 1.在js里面不区分整数和小数,123/1000=0.123(java里等于零) 2.数字字符串,相加的时候和java一样(“123”+1->1231),相减时做的是数字的相减运算(“123”-1->122)(不是数字字符串时提示NaN) 3.boolean类型(true:1,false:0) 4. ==和===的区别:==比较的是值,===比较的是值和类型 5.直接向页面输出语句(可以输出变量,固定值和标签代码)
document.write("aaaa");
document.write("< br/> ");//设置标签属性时,标签属性值使用单引号
js的数组
数组的定义方式: (1)var arr = {1,2,“3”,true};//可以存放不同的数据类型 (2)var arr1 = new Array(5);//使用内置对象Array对象,未存放数据 (3)var arr2 = new Array(6,7,8);//使用内置对象Array,并存入六个元素6,7,8 数组的属性:arr.length;//获取数组的长度
js的函数
定义函数的三种方式: 1.使用到关键字function
function 方法名(参数1,参数2,...) {//参数直接用参数名称
方法体;
返回值;//可有可无
}
2.匿名函数
var add = function(参数列表){}
3.适用到js里面的内置对象:Function
var add = new Function("参数列表","方法体和返回值");
方法的重载: 重载->方法名相同,参数不同 重写->方法名相同,参数相同 js的函数不存在重载,会调用方法名相同的最后一个方法 模拟重载的方法:
function add(){//所有传入的参数都会存到arguments数组中
if(arguments.length==2)//传入参数为2个
return arguments[0]+arguments[1];
if(arguments.length==3)//传入参数为3个
return arguments[0]+arguments[1]+arguments[2];
}
add(1,2);
add(1,2,3);
js的全局变量和局部变量
全局变量:在script标签里面定义的一个变量,这个变量在页面中js部分都可以使用(其它的script标签) 局部变量:在方法内部定义的一个变量,只能在方法内部使用
js中的常见对象
string对象
1.创建String对象:var str = “abc”; 2.获取其长度(属性):str.length 3.两类常用方法: (1)与html相关的方法 bold();//加粗字符串 fontcolor(“red”);//字体颜色 fontsize(1-7);//字体大小 link(“1.html”);//将字符串设置成超链接 sub();sup();//下标上标 (2)与java相似的方法 str1.concat(str2);//连接字符串 charAt(i);//返回指定位置的字符 indexOf(“a”);//返回a所在的位置 split(",");//根据,切分字符串,并返回一个字符数组 replace(“a”,“A”);//将a替换成A substr(5,3);//从第五位开始,向后截取三个字符 substring(3,5);//从第三位到第五位,不包含第五位
Array对象
1.创建数组:参考上文(三种方法) 2.获取其长度(属性):arr.length 3.常用方法: concat();//连接数组,返回一个新数组 join("-");//以-分割数组 push(“a”);//向数组末尾添加一个或多个元素,并返回新的长度(添加的是一个数组时,会被当做一个整体元素添加,长度+1) pop();//删除最后一个元素,并返回删除的元素 reverse();//颠倒数组中元素的顺序
Date对象
1.获取当前时间:var date = new Date();//Fri Apr 17 10:40:46 UTC+0800 2016 2.转换为习惯的格式:date.toLocaleString); 3.常用方法: getFullYear();//得到对象的年份 getMonth()+1;//得到当前的月份(0-11) getDay();//得到当前的星期(0-6)从星期日开始 getDate();//得到当前的天 getHours();//得到当前的小时 getminutes();//得到当前的分钟 getSeconds();//得到当前的秒 getTime();//返回1970 1 1至今的毫秒数
Math对象
1.都是静态方法,直接使用Math调用 2.常用方法: ceil(x);//向上舍入 floor(x);//向下舍入 round(x);//四舍五入 random();//得到一个0-1的伪随机数(伪随机数是用确定性的算法计算出来自[0,1]均匀分布的随机数序列) pow(x,y);//x的y次方
全局函数
js的全局函数:不属于任何一个对象,通过方法名称直接使用 常用方法: eval();//执行字符串中的js代码 encodeURI();/decodeURI();//对字符进行编码/解码 encodeURIComponent();/decodeURIComponent();//与上面两个方法相同,编码的字符数量不同 isNaN();//判断当前字符串是否为数字 parseInt();//类型转换
js中的bom和dom对象
bom的对象
bom:broswer object model(浏览器对象模型) 常用对象(使用方法:对象名.属性/方法): navigator:获取客户机(浏览器)的信息 screen:获取屏幕的信息 location:获取请求url的信息(属性:href->获取/设置请求的url地址)
< input type = " button" value = " tiaozhuan" onclick = " href1();" /> //onclick:鼠标点击事件,""中为要执行的方法
funtion href1(){
location.href = "跳转的地址";//设置url地址
}
history:请求的url的记录(属性:back()-上一个,forward()-下一个,go(-1/1)) window:是窗口对象,且是所有bom对象的顶层对象 window.alert();//页面弹出一个框,显示内容->简写alert(); window.confirm(“显示内容”);//确认提示框,返回boolean值 window.prompt(“显示提示内容”,“输入框默认值”);//输入的对话框(少用) window.open(URL,name,features);//打开一个新的窗口(url:打开的地址,name:窗口名字,features:窗口特征(宽高等)) window.opener();//用open打开新窗口后,返回创建此新窗口的窗口(opener是属性) window.close();//关闭窗口,浏览器兼容性差 window.setInterval(“js代码/方法”,毫秒数);//每隔…毫秒就执行一次js代码 window.setTimeout(“js代码/方法”,毫秒数);//在…毫秒之后执行js代码(一次) clearInterval(id);/clearTimeout(id);//清除setInterval/setTimeout设置的定时器(定时器会返回id值)
dom的对象
dom:document object model(文档对象模型) 作用:可以通过使用dom里面提供的对象,使用这些对象的属性和方法,对标记型文档进行操作 dom解析html的原理: 根据html的层级结构,会在内存中分配一个树形结构 树形结构中封装的对象: document->整个html文档 element->标签对象 属性对象 文本对象 Node节点对象(上诉对象的父对象,上诉对象没有想要的方法时使用)
DHTML
DHTML:动态的HTML,不是一门语言,而是多项技术综合的简称 包含的技术: html:封装数据 css:使用属性和属性值设置样式 javascript:专门指的是js的语法语句
document对象
常用方法: document.write();//向页面输出内容或html代码 document.getElementById(“标签的id的值”);//通过id得到其标签对象 document.getElementsByName(“标签的name的属性值”);//返回所有和name值相同的标签对象的数组集合 document.getElementsByTagName(“标签名称”);//返回所有和标签名相同的标签对象的数组集合
对树的基本操作(详见操作Node对象的小节): var li1 = document.creatElement(“标签”);//创建标签节点 var tex1 = document.creatTextNode(“测试”);//创建文本节点 li1.appendChild(tex1);//Node对象的方法,将tex1加到li1下面 ul1.appendChild(li1);//将li1添加到名为ul1的列表下面
element对象
element对象获取方法:通过document对象里面的方法获取 element对象中的常用方法: getAttribute(“属性名”);//获取属性值 setAttribute(“属性名”,“属性值”);//设置属性的属性值 removeAttribute(“属性名”);//删除属性,不能删除 获取列表标签下的子标签:
< ul id = " ulid1" >
< li> aaaa li>
< li> bbbb li>
< li> cccc li>
ul>
< spript type = " text/javaspript" >
var ull1 = document.getElementById("uliid1");
var lis = ull1.childNode;//返回element对象ull1下子类标签的数组(Node对象中的方法,兼容性差)
var lis1 = ull1.getElementsByTagName("li");//唯一有效方法
spript>
Node对象
常见属性(标签,属性,文本封装的对象(节点)都有这些属性): 获取标签对象:var span1 = document.getElementById(“spanid”);//document 获取属性对象:var id1 = span1.getAttributeNode(“id”);//Node 获取文本对象:var text1 = span1.firstChild;//Node nodeName nodeType(标签:1,属性:2,文本:3) nodeValue
< ul id = " ulid" >
< li id = " li1" > qqq li>
< li id = " li2" > www li>
< li id = " li3" > eee li>
ul>
var ul1 = document.getElementById(“ulid”); var li1 = document.getElementById(“li1”); var li2 = document.getElementById(“li2”);
查询dom树的常用方法: li1.parentNode;//获取li1的父节点ulid ul1.firstChild;//获取ul1的第一个子节点li1 ul1.lastChild;//获取ul1的最后一个子节点li3 li2.nextSibling;//获取li2的下一个同辈节点li3 li2.previouSibling;//获取li2的上一个同辈节点li1
操作dom树的相关方法: div1.appendChild(“ul1”);//将ul1节点添加到div1节点末尾 insertBefor(“要插入的节点”,“插入谁之前的节点”);//在某个节点之前插入一个节点(同辈)
var li4 = document.creatElement("标签");//创建标签节点
var tex1 = document.creatTextNode("rrr");//创建文本节点
li1.appendChild(tex1);//Node对象的方法,将tex1加到li1下面
ul1.inserBefor("li4","li2");//将节点li4添加到li2节点之前(同辈)
ul1.removeChild(“li1”);//删除li1节点(通过父节点ul1) replaceChild(newNode,oldNode);//替换节点 cloneNode(boolean);//复制节点true
innerHTML
innerHTML:不是dom的组成部分,但大多数浏览器支持的属性 作用: 1.获取文本内容 2.向标签里面设置内容
var span = document.getElementById("sid");
span.innerHTML;//获取文本内容
var div1 = document.getElementById("div1");
div1.innerHTML = "< h1> AAAA h1> ";//向div里设置内容< h1> AAAA h1>
你可能感兴趣的:(JavaWeb,JavaWeb,JavaScript,学习笔记)
JSON 与 AJAX
Auscy
json ajax 前端
一、JSON(JavaScriptObjectNotation)1.数据类型与语法细节支持的数据类型:基本类型:字符串(需用双引号)、数字、布尔值(true/false)、null。复杂类型:数组([])、对象({})。严格语法规范:键名必须用双引号包裹(如"name":"张三")。数组元素用逗号分隔,最后一个元素后不能有多余逗号。数字不能以0开头(如012会被解析为12),不支持八进制/十六进制
C++ 11 Lambda表达式和min_element()与max_element()的使用_c++ lamda函数 min_element((1)
2401_84976182
程序员 c语言 c++ 学习
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上CC++开发知识点,真正体系化!由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新如果你需要这些资料,可以戳这里获取#include#include#includeusingnamespacestd;boolcmp(int
JavaScript 树形菜单总结
Auscy
microsoft
树形菜单是前端开发中常见的交互组件,用于展示具有层级关系的数据(如文件目录、分类列表、组织架构等)。以下从核心概念、实现方式、常见功能及优化方向等方面进行总结。一、核心概念层级结构:数据以父子嵌套形式存在,如{id:1,children:[{id:2}]}。节点:树形结构的基本单元,包含自身信息及子节点(若有)。展开/折叠:子节点的显示与隐藏切换,是树形菜单的核心交互。递归渲染:因数据层级不固定,
精通Canvas:15款时钟特效代码实现指南
烟幕缭绕
本文还有配套的精品资源,点击获取简介:HTML5的Canvas是一个用于绘制矢量图形的API,通过JavaScript实现动态效果。本项目集合了15种不同的时钟特效代码,帮助开发者通过学习绘制圆形、线条、时间更新、旋转、颜色样式设置及动画效果等概念,深化对Canvas的理解和应用。项目中的CSS文件负责时钟的样式设定,而JS文件则包含实现各种特效的逻辑,通过不同的函数或类处理时间更新和动画绘制,提
算法学习笔记:17.蒙特卡洛算法 ——从原理到实战,涵盖 LeetCode 与考研 408 例题
在计算机科学和数学领域,蒙特卡洛算法(MonteCarloAlgorithm)以其独特的随机抽样思想,成为解决复杂问题的有力工具。从圆周率的计算到金融风险评估,从物理模拟到人工智能,蒙特卡洛算法都发挥着不可替代的作用。本文将深入剖析蒙特卡洛算法的思想、解题思路,结合实际应用场景与Java代码实现,并融入考研408的相关考点,穿插图片辅助理解,帮助你全面掌握这一重要算法。蒙特卡洛算法的基本概念蒙特卡
分布式学习笔记_04_复制模型
NzuCRAS
分布式 学习 笔记 架构 后端
常见复制模型使用复制的目的在分布式系统中,数据通常需要被分布在多台机器上,主要为了达到:拓展性:数据量因读写负载巨大,一台机器无法承载,数据分散在多台机器上仍然可以有效地进行负载均衡,达到灵活的横向拓展高容错&高可用:在分布式系统中单机故障是常态,在单机故障的情况下希望整体系统仍然能够正常工作,这时候就需要数据在多台机器上做冗余,在遇到单机故障时能够让其他机器接管统一的用户体验:如果系统客户端分布
算法学习笔记:15.二分查找 ——从原理到实战,涵盖 LeetCode 与考研 408 例题
呆呆企鹅仔
算法学习 算法 学习 笔记 考研 二分查找
在计算机科学的查找算法中,二分查找以其高效性占据着重要地位。它利用数据的有序性,通过不断缩小查找范围,将原本需要线性时间的查找过程优化为对数时间,成为处理大规模有序数据查找问题的首选算法。二分查找的基本概念二分查找(BinarySearch),又称折半查找,是一种在有序数据集合中查找特定元素的高效算法。其核心原理是:通过不断将查找范围减半,快速定位目标元素。与线性查找逐个遍历元素不同,二分查找依赖
【前端】jQuery数组合并去重方法总结
在jQuery中合并多个数组并去重,推荐使用原生JavaScript的Set对象(高效简单)或$.unique()(仅适用于DOM元素,不适用于普通数组)。以下是完整解决方案:方法1:使用ES6Set(推荐)//定义多个数组constarr1=[1,2,3];constarr2=[2,3,4];constarr3=[3,4,5];//合并数组并用Set去重constmergedArray=[...
日历插件-FullCalendar的详细使用
老马聊技术
JavaScript 前端 javascript
一、介绍FullCalendar是一个功能强大、高度可定制的JavaScript日历组件,用于在网页中显示和管理日历事件。它支持多种视图(月、周、日等),可以轻松集成各种框架,并提供丰富的事件处理功能。二、实操案例具体代码如下:FullCalendar日期选择body{font-family:Arial,sans-serif;margin:20px;}#calendar{max-width:900
OKHttp3源码分析——学习笔记
Sincerity_
源码相关 Okhttp 源码解析 读书笔记 httpclient cache
文章目录1.HttpClient与HttpUrlConnection的区别2.OKHttp源码分析使用步骤:dispatcher任务调度器,(后面有详细说明)Request请求RealCallAsyncCall3.OKHttp架构分析1.异步请求线程池,Dispather2.连接池清理线程池-ConnectionPool3.缓存整理线程池DisLruCache4.Http2异步事务线程池,http
javascript高级程序设计第3版——第12章 DOM2与DOM3
weixin_30687587
javascript 数据结构与算法 ViewUI
12章——DOM2与DOM3为了增强D0M1,DOM级规范定义了一些模块。DOM2核心:为不同的DOM类型引入了一些与XML命名空间有关的方法,还定义了以编程方式创建Document实例的方法;DOM2级样式:针对操作元素的样式而开发;其特性总结:1.每个元素都有一个关联的style对象,可用来确定和修改行内样式;2.要确定某个元素的计算样式,可使用getComgetComputedStyle()
JavaScript 基础09:Web APIs——日期对象、DOM节点
梦想当全栈
JavaScript javascript 前端 开发语言
JavaScript基础09:WebAPIs——日期对象、DOM节点进一步学习DOM相关知识,实现可交互的网页特效能够插入、删除和替换元素节点。能够依据元素节点关系查找节点。一、日期对象掌握Date日期对象的使用,动态获取当前计算机的时间。ECMAScript中内置了获取系统时间的对象Date,使用Date时与之前学习的内置对象console和Math不同,它需要借助new关键字才能使用。1.实例
《Java前端开发全栈指南:从Servlet到现代框架实战》
前言在当今Web开发领域,Java依然是后端开发的主力语言,而随着前后端分离架构的普及,Java开发者也需要掌握前端技术栈。本文将全面介绍JavaWeb前端开发的核心技术,包括传统Servlet/JSP体系、现代前端框架集成方案,以及全栈开发的最佳实践。通过本文,您将了解如何构建现代化的JavaWeb应用前端界面。一、JavaWeb前端技术演进1.1传统技术栈Servlet:JavaWeb基础,处
Java中的Tomcat,开启Web应用腾飞【基础版】
目录一、Tomcat初登场:揭开神秘面纱(一)啥是Tomcat(二)为啥要有Tomcat二、Tomcat的安装与启动:开启第一步(一)下载Tomcat(二)启动Tomcat三、Tomcat的目录结构:探秘内部布局(一)核心目录介绍(二)目录间的协同工作四、部署JavaWeb应用到Tomcat:让应用上线(一)打包Web应用为WAR文件(二)部署WAR文件到Tomcat五、Tomcat的配置优化:让
Java Web 之 Session 详解
艾伦~耶格尔
java 开发语言 后端 前端 session
在JavaWeb开发中,Session就像网站的专属记忆管家,为每个用户保管着重要的信息和状态,确保用户在网站的旅程顺畅无阻。场景一:想象你去一家大型超市购物,推着购物车挑选商品。这个购物车就如同Session,它记录了你的购物信息,方便你在结账时一次性结算。场景二:你在玩一个在线游戏,登录账号后,你的游戏进度、等级、装备等信息都会被保存在Session中,即使你中途关闭游戏,下次登录时依然可以继
Python学习笔记5|条件语句和循环语句
iamecho9
Python从0到1学习笔记 python 学习 笔记
一、条件语句条件语句用于根据不同的条件执行不同的代码块。1、if语句基本语法:if布尔型语句1:代码块#语句1为True时执行的代码示例:age=int(input("请输入你的年龄:"))ifage>=18:print("你已成年")2、if-else语句如果if条件不成立,则执行else代码块:if布尔型语句1:代码块#语句1为True时执行的代码else:代码块#语句1为False时执行的代
JavaScript之DOM操作与事件处理详解
AA-代码批发V哥
JavaScript javascript
JavaScript之DOM操作与事件处理详解一、DOM基础:理解文档对象模型二、DOM元素的获取与访问2.1基础获取方法2.2集合的区别与注意事项三、DOM元素的创建与修改3.1创建与插入元素3.2修改元素属性与样式3.2.1属性操作3.2.2样式操作3.3元素内容的修改四、DOM元素的删除与替换4.1删除元素4.2替换元素五、事件处理:实现页面交互5.1事件绑定的三种方式5.1.1HTML属性
V少JS基础班之第五弹
V少在逆向
JS基础班 javascript 开发语言 ecmascript
文章目录一、前言二、本节涉及知识点三、重点内容1-函数的定义2-函数的构成1.函数参数详解1)参数个数不固定2)默认参数3)arguments对象(类数组)4)剩余参数(Rest参数)5)函数参数是按值传递的6)解构参数传递7)参数校验技巧(JavaScript没有类型限制,需要手动校验)2.函数返回值详解3-函数的分类1-函数声明式:2-函数表达式:3-箭头函数:4-构造函数:5-IIFE:6-
Javaweb学习之Vue模板语法(三)
不要数手指啦
vue.js 学习 前端
目录学习资料前情回顾本期介绍(vue模板语法)文本插值Vue的Attribute绑定使用JavaScript表达式综合实例代码:学习资料Vue.js-渐进式JavaScript框架|Vue.js(vuejs.org)前情回顾项目的创建大家可以看这篇文章Vue学习之项目的创建-CSDN博客本期介绍(vue模板语法)首先,找到我们编写代码的地方找到自己项目的src文件夹,打开之后点击component
Tomcat:Java Web应用的幕后英雄
互联网动态分析
tomcat
在当今数字化浪潮中,Java作为一门成熟且广泛应用的编程语言,支撑着无数企业级应用和互联网服务的稳定运行。而在JavaWeb开发领域,Tomcat无疑是一个举足轻重的存在,它宛如一位默默耕耘的幕后英雄,为众多Web应用提供了可靠的运行环境。Tomcat的起源与发展Tomcat的故事始于1999年,当时SunMicrosystems(后被Oracle收购)与Apache软件基金会合作,旨在为Java
深入解析 “void(0);” 的用法与作用_void(0);
关键要点void(0);是JavaScript中的一个表达式,研究表明它通常用于超链接中,防止页面跳转。它通过void运算符计算表达式并返回undefined,常用于创建“死链接”。证据显示,这种用法简单易用,但现代开发更推荐使用事件监听器。基本概念void(0);的作用void(0);是JavaScript的void运算符的一个实例,void运算符会计算一个表达式但不返回任何值,而是始终返回un
【JS三兄弟谁是谁】搞懂 splice、slice、split,只需一杯奶茶的时间!
dorabighead
前端八股总结 javascript 前端 开发语言
JavaScript有三兄弟,经常一起“切人”。他们名字相似、功能相关,但性格迥异,常被搞混。今天,就带你喝着奶茶,笑着剖析,帮你彻底搞懂:splice、slice、split到底是谁?干了啥?凭啥这么火?一、三兄弟登场:不同对象,不同任务名称作用对象是否修改原对象返回类型功能简述splice数组✅是被删除元素数组原地删除元素并可插入新元素slice数组/字符串❌否副本(子集)复制选中部分,原体不
5G标准学习笔记14 - CSI--RS概述
刘孬孬沉迷学习
5G 学习 笔记 信息与通信
5G标准学习笔记14-CSI–RS概述大家好~,这里是刘孬孬,今天带着大家一起学习一下5GNR中一个非常非常重要的参考信号------------------CSI-RS信号,CSI-RS不是持续发送,UE只能在网络明确配置了CSI-RS的情况下才能使用其进行信道测量。前言对于CSI-RS,肯定还离不开前面所说的CSI(channelstateinformation),前面也讲过CSI对于MIMO
5G标准学习笔记06-基于AI/ML波束管理
刘孬孬沉迷学习
5G 学习 笔记
5G标准学习笔记06-基于AI/ML波束管理前言前面对于孬孬学习了波束管理的概述,下面要进一步来看一下传统波束管理和现在3GPP中推动的AL/ML波束管理之前的区别联系。一、传统波束管理方法流程传统BM流程主要包括以下步骤:波束扫描(BeamSweeping):gNB通过顺序发送多个窄波束(SSB或CSI-RS),覆盖整个服务区域,UE测量每个波束的信号质量(如L1-RSRP或L1-SINR)。波
5G标准学习笔记03- CSI 反馈增强概述
刘孬孬沉迷学习
5G 笔记 学习
5G标准学习笔记03-CSI反馈增强概述大家好,最近在研究AI/ML3gpp标准NR空口的有关内容,后面可能会给大家介绍一下对应的有关内容AI/ML在3GPP标准中的研究进展在AI/ML在NR空口的应用中,对应标准主要聚焦了3个case进行讨论研究分别是:CSI反馈增强;波束管理;定位精度增强;这三个内容可能比较涉及RAN1/2的具体内容,后面会基于这个进行一定的介绍。今天主要是主要介绍CSI反馈
前端面试题总结——JS篇
又又呢
前端 javascript 开发语言
一、说说JavaScript中的数据类型?存储上有什么差别?1、数据类型基本类型number:数值类型十进制:letintNum=55八进制(零开头):letnum1=070十六进制(0x开头):lethexNum1=0xANaN:特殊数值,意为“不是数值”string:字符串类型boolean:布尔值,true或falseundefined:表示未定义null:空值symbol:是原始值,且符号
前端面试题——5.AjAX的缺点?
浅端
前端面试题 前端面试题
①传统的web交互是:用户一个网页动作,就会发送一个http请求到服务器,服务器处理完该请求再返回一个完整的HTML页面,客户端再重新加载,这样极大地浪费了带宽。②AJAX的出现解决了这个问题,它只会向服务器请求用户所需要的数据,并在客户端采用JavaScript处理返回的数据,操作DOM更新页面。③AJXA优点:无刷新更新页面异步服务器通信前端后端负载均衡④AJAX缺点:干掉了Back和Hist
JavaScript知识归纳——面试题
Dream_Lee_1997
JavaScript js面试题
JavaScript面试题总结JavaScript知识点1、JavaScript中settimeout与setinteval两个函数的区别?2、编写JavaScript脚本生成1-6之间的整数?3、在JavaScript脚本中,isNaN的作用是什么?4、JavaScript中获取某个元素有哪几种方式?5、Ajax的优缺点都有什么?6、简述一下Ajax的工作原理。7、JavaScript中的数据类
2023高薪前端面试题(二、前端核心——Ajax)
原生AjaxAjax简介Ajax全程为AsynchronousJavaScript+XML,就是异步的JS和XML通过AJAX可以在浏览器中向服务器发送异步请求,最大的优势是:无刷新获取数据,实现局部刷新Ajax是一种用于创建快速动态网页的技术AJAX不是新的编程语言,而是一种将现有的标准组合在一起使用的新方式Ajax的应用场景页面上拉加载更多数据列表数据无刷新分页表单项离开焦点数据验证搜索框提示
学习笔记(33):matplotlib绘制简单图表-绘制混淆矩阵热图
宁儿数据安全
# 机器学习 学习 笔记 matplotlib
学习笔记(33):matplotlib绘制简单图表-绘制混淆矩阵热图一、绘制混淆矩阵热图代码解析1.1、导入必要的库importmatplotlib.pyplotaspltfromsklearn.metricsimportconfusion_matriximportseabornassnsmatplotlib.pyplot:Python中最常用的绘图库,用于创建各种图表confusion_matr
Java序列化进阶篇
g21121
java序列化
1.transient
类一旦实现了Serializable 接口即被声明为可序列化,然而某些情况下并不是所有的属性都需要序列化,想要人为的去阻止这些属性被序列化,就需要用到transient 关键字。
escape()、encodeURI()、encodeURIComponent()区别详解
aigo
JavaScript Web
原文:http://blog.sina.com.cn/s/blog_4586764e0101khi0.html
JavaScript中有三个可以对字符串编码的函数,分别是: escape,encodeURI,encodeURIComponent,相应3个解码函数:,decodeURI,decodeURIComponent 。
下面简单介绍一下它们的区别
1 escape()函
ArcgisEngine实现对地图的放大、缩小和平移
Cb123456
添加矢量数据 对地图的放大、缩小和平移 Engine
ArcgisEngine实现对地图的放大、缩小和平移:
个人觉得是平移,不过网上的都是漫游,通俗的说就是把一个地图对象从一边拉到另一边而已。就看人说话吧.
具体实现:
一、引入命名空间
using ESRI.ArcGIS.Geometry;
using ESRI.ArcGIS.Controls;
二、代码实现.
Java集合框架概述
天子之骄
Java集合框架概述
集合框架
集合框架可以理解为一个容器,该容器主要指映射(map)、集合(set)、数组(array)和列表(list)等抽象数据结构。
从本质上来说,Java集合框架的主要组成是用来操作对象的接口。不同接口描述不同的数据类型。
简单介绍:
Collection接口是最基本的接口,它定义了List和Set,List又定义了LinkLi
旗正4.0页面跳转传值问题
何必如此
java jsp
跳转和成功提示
a) 成功字段非空forward
成功字段非空forward,不会弹出成功字段,为jsp转发,页面能超链接传值,传输变量时需要拼接。接拼接方式list.jsp?test="+strweightUnit+"或list.jsp?test="+weightUnit+&qu
全网唯一:移动互联网服务器端开发课程
cocos2d-x小菜
web开发 移动开发 移动端开发 移动互联 程序员
移动互联网时代来了! App市场爆发式增长为Web开发程序员带来新一轮机遇,近两年新增创业者,几乎全部选择了移动互联网项目!传统互联网企业中超过98%的门户网站已经或者正在从单一的网站入口转向PC、手机、Pad、智能电视等多端全平台兼容体系。据统计,AppStore中超过85%的App项目都选择了PHP作为后端程
Log4J通用配置|注意问题 笔记
7454103
DAO apache tomcat log4j Web
关于日志的等级 那些去 百度就知道了!
这几天 要搭个新框架 配置了 日志 记下来 !做个备忘!
#这里定义能显示到的最低级别,若定义到INFO级别,则看不到DEBUG级别的信息了~!
log4j.rootLogger=INFO,allLog
# DAO层 log记录到dao.log 控制台 和 总日志文件
log4j.logger.DAO=INFO,dao,C
SQLServer TCP/IP 连接失败问题 ---SQL Server Configuration Manager
darkranger
sql c windows SQL Server XP
当你安装完之后,连接数据库的时候可能会发现你的TCP/IP 没有启动..
发现需要启动客户端协议 : TCP/IP
需要打开 SQL Server Configuration Manager...
却发现无法打开 SQL Server Configuration Manager..??
解决方法: C:\WINDOWS\system32目录搜索framedyn.
[置顶] 做有中国特色的程序员
aijuans
程序员
从出版业说起 网络作品排到靠前的,都不会太难看,一般人不爱看某部作品也是因为不喜欢这个类型,而此人也不会全不喜欢这些网络作品。究其原因,是因为网络作品都是让人先白看的,看的好了才出了头。而纸质作品就不一定了,排行榜靠前的,有好作品,也有垃圾。 许多大牛都是写了博客,后来出了书。这些书也都不次,可能有人让为不好,是因为技术书不像小说,小说在读故事,技术书是在学知识或温习知识,有些技术书读得可
document.domain 跨域问题
avords
document
document.domain用来得到当前网页的域名。比如在地址栏里输入:javascript:alert(document.domain); //www.315ta.com我们也可以给document.domain属性赋值,不过是有限制的,你只能赋成当前的域名或者基础域名。比如:javascript:alert(document.domain = "315ta.com");
关于管理软件的一些思考
houxinyou
管理
工作好多看年了,一直在做管理软件,不知道是我最开始做的时候产生了一些惯性的思维,还是现在接触的管理软件水平有所下降.换过好多年公司,越来越感觉现在的管理软件做的越来越乱.
在我看来,管理软件不论是以前的结构化编程,还是现在的面向对象编程,不管是CS模式,还是BS模式.模块的划分是很重要的.当然,模块的划分有很多种方式.我只是以我自己的划分方式来说一下.
做为管理软件,就像现在讲究MVC这
NoSQL数据库之Redis数据库管理(String类型和hash类型)
bijian1013
redis 数据库 NoSQL
一.Redis的数据类型
1.String类型及操作
String是最简单的类型,一个key对应一个value,string类型是二进制安全的。Redis的string可以包含任何数据,比如jpg图片或者序列化的对象。
Set方法:设置key对应的值为string类型的value
Tomcat 一些技巧
征客丶
java tomcat dos
以下操作都是在windows 环境下
一、Tomcat 启动时配置 JAVA_HOME
在 tomcat 安装目录,bin 文件夹下的 catalina.bat 或 setclasspath.bat 中添加
set JAVA_HOME=JAVA 安装目录
set JRE_HOME=JAVA 安装目录/jre
即可;
二、查看Tomcat 版本
在 tomcat 安装目
【Spark七十二】Spark的日志配置
bit1129
spark
在测试Spark Streaming时,大量的日志显示到控制台,影响了Spark Streaming程序代码的输出结果的查看(代码中通过println将输出打印到控制台上),可以通过修改Spark的日志配置的方式,不让Spark Streaming把它的日志显示在console
在Spark的conf目录下,把log4j.properties.template修改为log4j.p
Haskell版冒泡排序
bookjovi
冒泡排序 haskell
面试的时候问的比较多的算法题要么是binary search,要么是冒泡排序,真的不想用写C写冒泡排序了,贴上个Haskell版的,思维简单,代码简单,下次谁要是再要我用C写冒泡排序,直接上个haskell版的,让他自己去理解吧。
sort [] = []
sort [x] = [x]
sort (x:x1:xs)
| x>x1 = x1:so
java 路径 配置文件读取
bro_feng
java
这几天做一个项目,关于路径做如下笔记,有需要供参考。
取工程内的文件,一般都要用相对路径,这个自然不用多说。
在src统计目录建配置文件目录res,在res中放入配置文件。
读取文件使用方式:
1. MyTest.class.getResourceAsStream("/res/xx.properties")
2. properties.load(MyTest.
读《研磨设计模式》-代码笔记-简单工厂模式
bylijinnan
java 设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
package design.pattern;
/*
* 个人理解:简单工厂模式就是IOC;
* 客户端要用到某一对象,本来是由客户创建的,现在改成由工厂创建,客户直接取就好了
*/
interface IProduct {
SVN与JIRA的关联
chenyu19891124
SVN
SVN与JIRA的关联一直都没能装成功,今天凝聚心思花了一天时间整合好了。下面是自己整理的步骤:
一、搭建好SVN环境,尤其是要把SVN的服务注册成系统服务
二、装好JIRA,自己用是jira-4.3.4破解版
三、下载SVN与JIRA的插件并解压,然后拷贝插件包下lib包里的三个jar,放到Atlassian\JIRA 4.3.4\atlassian-jira\WEB-INF\lib下,再
JWFDv0.96 最新设计思路
comsci
数据结构 算法 工作 企业应用 公告
随着工作流技术的发展,工作流产品的应用范围也不断的在扩展,开始进入了像金融行业(我已经看到国有四大商业银行的工作流产品招标公告了),实时生产控制和其它比较重要的工程领域,而
vi 保存复制内容格式粘贴
daizj
vi 粘贴 复制 保存原格式 不变形
vi是linux中非常好用的文本编辑工具,功能强大无比,但对于复制带有缩进格式的内容时,粘贴的时候内容错位很严重,不会按照复制时的格式排版,vi能不能在粘贴时,按复制进的格式进行粘贴呢? 答案是肯定的,vi有一个很强大的命令可以实现此功能 。
在命令模式输入:set paste,则进入paste模式,这样再进行粘贴时
shell脚本运行时报错误:/bin/bash^M: bad interpreter 的解决办法
dongwei_6688
shell脚本
出现原因:windows上写的脚本,直接拷贝到linux系统上运行由于格式不兼容导致
解决办法:
1. 比如文件名为myshell.sh,vim myshell.sh
2. 执行vim中的命令 : set ff?查看文件格式,如果显示fileformat=dos,证明文件格式有问题
3. 执行vim中的命令 :set fileformat=unix 将文件格式改过来就可以了,然后:w
高一上学期难记忆单词
dcj3sjt126com
word english
honest 诚实的;正直的
argue 争论
classical 古典的
hammer 锤子
share 分享;共有
sorrow 悲哀;悲痛
adventure 冒险
error 错误;差错
closet 壁橱;储藏室
pronounce 发音;宣告
repeat 重做;重复
majority 大多数;大半
native 本国的,本地的,本国
hibernate查询返回DTO对象,DTO封装了多个pojo对象的属性
frankco
POJO hibernate查询 DTO
DTO-数据传输对象;pojo-最纯粹的java对象与数据库中的表一一对应。
简单讲:DTO起到业务数据的传递作用,pojo则与持久层数据库打交道。
有时候我们需要查询返回DTO对象,因为DTO
Partition List
hcx2013
partition
Given a linked list and a value x, partition it such that all nodes less than x come before nodes greater than or equal to x.
You should preserve the original relative order of th
Spring MVC测试框架详解——客户端测试
jinnianshilongnian
上一篇《Spring MVC测试框架详解——服务端测试》已经介绍了服务端测试,接下来再看看如果测试Rest客户端,对于客户端测试以前经常使用的方法是启动一个内嵌的jetty/tomcat容器,然后发送真实的请求到相应的控制器;这种方式的缺点就是速度慢;自Spring 3.2开始提供了对RestTemplate的模拟服务器测试方式,也就是说使用RestTemplate测试时无须启动服务器,而是模拟一
关于推荐个人观点
liyonghui160com
推荐系统 关于推荐个人观点
回想起来,我也做推荐了3年多了,最近公司做了调整招聘了很多算法工程师,以为需要多么高大上的算法才能搭建起来的,从实践中走过来,我只想说【不是这样的】
第一次接触推荐系统是在四年前入职的时候,那时候,机器学习和大数据都是没有的概念,什么大数据处理开源软件根本不存在,我们用多台计算机web程序记录用户行为,用.net的w
不间断旋转的动画
pangyulei
动画
CABasicAnimation* rotationAnimation;
rotationAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
rotationAnimation.toValue = [NSNumber numberWithFloat: M
自定义annotation
sha1064616837
java enum annotation reflect
对象有的属性在页面上可编辑,有的属性在页面只可读,以前都是我们在页面上写死的,时间一久有时候会混乱,此处通过自定义annotation在类属性中定义。越来越发现Java的Annotation真心很强大,可以帮我们省去很多代码,让代码看上去简洁。
下面这个例子 主要用到了
1.自定义annotation:@interface,以及几个配合着自定义注解使用的几个注解
2.简单的反射
3.枚举
Spring 源码
up2pu
spring
1.Spring源代码
https://github.com/SpringSource/spring-framework/branches/3.2.x
注:兼容svn检出
2.运行脚本
import-into-eclipse.bat
注:需要设置JAVA_HOME为jdk 1.7
build.gradle
compileJava {
sourceCompatibilit
利用word分词来计算文本相似度
yangshangchuan
word word分词 文本相似度 余弦相似度 简单共有词
word分词提供了多种文本相似度计算方式:
方式一:余弦相似度,通过计算两个向量的夹角余弦值来评估他们的相似度
实现类:org.apdplat.word.analysis.CosineTextSimilarity
用法如下:
String text1 = "我爱购物";
String text2 = "我爱读书";
String text3 =