0


蓝桥web基础知识学习

HTML+CSS

知识点重要指数HTML 基础标签🌟🌟🌟🌟🌟HTML5 新特性🌟🌟🌟🌟🌟HTML5 本地存储🌟🌟🌟🌟CSS 基础语法🌟🌟🌟🌟🌟盒子模型🌟🌟🌟🌟🌟浮动与定位🌟🌟🌟🌟🌟CSS3 新特性🌟🌟🌟🌟弹性盒子🌟🌟🌟🌟🌟媒体查询🌟🌟🌟

标签

meta

meta:设置作者、描述、字符编码等

title

title:设置页面标题

a

打开邮箱和电话的界面

<ahref="mailto:[email protected]">邮箱</a><ahref="tel:178xxxxxxxx">电话</a>

书签(锚点)

<aname="demo">锚点</a><ahref="#demo">跳转到锚点</a>

target(打开目标文档的方式)
属性值描述_blank在新窗口中打开被链接文档。_self在相同的框架中打开被链接文档。_top在整个窗口中打开被链接文档。_parent在父框架集中打开被链接文档。

span

strong加粗

img

alt:图像加载失败时显示的文本
src:图像链接

div

p

h1~h6

ol有序标签

<oltype="A"><li>项目一</li><li>项目二</li><li>项目三</li></ol>

在这里插入图片描述
属性值说明A用大写字母作为排序符号a用小写字母作为排序符号I用大写罗马字符作为排序符号i用小写罗马字符作为排序符号1用数字作为排序符号

ul无序列表

<ul><li>项目一</li><li>项目二</li><li>项目三</li></ul>

属性值说明disc实心圆 ●circle空心圆 ○square实心方块 ■

dl自定义列表

<dl><dt>列表项一</dt><dd>列表项一的描述</dd><dt>列表项二</dt><dd>列表项二的描述</dd></dl>

表单

action:请求地址
method:请求方法

文本输入

<inputtype="text"/>

单选多选

<!--单选框--><inputtype="radio"name="选项名"value="提交值"/><!--复选框--><inputtype="checkbox"name="选项名"value="提交值"/>

对于

radio

来说,

name

相同的会划分到同一个分组\

重置

<inputtype="reset"/>

上传文件

<inputtype="file"name="表单项名字"accept="上传文件的格式"/>

提交

<inputtype="submit"name="表单项名字"value="按钮内文字"/>

下拉列表

<select><option>选项一</option><option>选项二</option><option>选项三</option></select>

select常用属性描述multiple设置下拉列表可以选择多项。size设置下拉列表选择几个表项。option属性描述selected设置是否被选中。value设置列表项的默认值。

H5新特性

语义化标签

在这里插入图片描述

audio

<audiosrc="URL"controls></audio>

controls

:提供播放暂停和音量控件

autoplay

属性:音频自动播放。

loop

属性:音频自动重复播放。

preload

属性:用来缓冲 audio 标签的大文件,它有三个属性值 none(不缓冲)、auto(缓冲音频文件)、metadata (缓冲文件的元数据)。

还可以设置多个源

<audio><sourcesrc="filename.opus"/><sourcesrc="filename.ogg"/><sourcesrc="filename.mp3"/></audio>

video

<videocontrols><sourcesrc="URL"poster="URL"/></video>


poster:视频封面

邮箱输入

<inputtype="email"/>

网址输入

<inputtype="url"/>

计数器

<inputtype="number"value="5"step="2"max="20"min="1"/>

默认值、步长、最大最小值

滑动取值器

<inputtype="range"/>

日期时间选择器

日期选择

<inputtype="date"/>

日期时间选择

<inputtype="datetime-local"/>

搜索输入

让解析引擎知道这是个搜索框而给出不同于输入框的适配
让程序员迅速定位
让搜索引擎好爬

<inputtype="search"/>

取色器

<inputtype="color"/>

新的form

就是给form标签一个id属性,给表单标签一个form属性,值为指向的form的id,可以实现form的组合

autofocus

一进入页面时,输入框就马上获取焦点

<inputtype="text"autofocus/>

记录历史输入以及补全提示

<formautocomplete="on"></form>

背景提示字

<inputplaceholder="请输入账户"/>

浏览器本地存储

localStorage

sessionStorage

前者必须手动才能删除,后者在关闭网页或浏览器时删除

.setItem(k,v).getItem(k).removeItem(k).clear()

CSS

选择器优先级

id选择器 > 类选择器 > 标签选择器

其他选择器

  • 后代:空格分隔,全部后代
  • 群组选择器:逗号分隔,如div, span { color: blue; } 表示所有的div和span都是蓝色
  • 1234

背景样式

  • background-color:背景颜色
  • background-image:背景图片,要用url("moon.jpg");
  • background-size:背景图片大小,如300px 300px
  • background-position:背景图像的位置,如center
  • background-repeat:图像平铺。应该从父元素继承 background-repeat 属性的设置。 可 取 值描 述repeat背景图像将在垂直方向和水平方向重复(默认值)repeat-x背景图像将在水平方向重复repeat-y背景图像将在垂直方向重复no-repeat背景图像将仅显示一次

文本属性

属 性可 取 值描 述line-heightnormal、number、length、%设置行高text-indentlength、%设置文本缩进text-alignleft、right、center、justify、start、end设置对齐方式letter-spacingnormal、length设置字符间距text-decorationline、color、style、thickness设置文本修饰white-spacenormal、pre、nowrap、pre-wrap、pre-line、break-spaces规定如何处理空白line-breakauto、loose、normal、strict、anywhere、unset处理如何断开带有标点符号的文本的行

  • lineheight属性 normal:取决于用户端。 number:数字乘以元素的字体大小。 length:指定长度用于计算高度。 %:计算值是给定的百分比值乘以元素计算出的字体大小。
  • text-decoration 可设置线的位置(上下中)、线的样式(虚实波浪)、线的颜色、线的粗细

字体属性

属 性可 取 值描 述fontfont-style、font-variant、font-weight、font-size(或 line-height)、font-family在一个声明中设置所有的字体属性font-family字体名称、inherit设置字体类型font-sizexx-small、x-small、small、medium(默认)、large、x-large、xx-large smaller、larger length、%、inherit设置字体大小font-weightnormal(默认)、bold、bolder、lighter、inherit 100、200…900(400=normal,700=bold)设置字体粗细font-stylenormal、italic、oblique、inherit设置字体风格

伪类

针对链接的

状态效果a:link普通的、未被访问的链接。a:visited用户已访问的链接。a:hover鼠标指针位于链接的上方。a:active链接被单击的时刻。

盒子模型

在这里插入图片描述

border

solid(实线)、dotted(圆点)、dashed(虚线)、double(双横线)
border: border-width border-style border-color;

padding、margin

display

属性值说明block元素以块级方式展示。inline元素以内联方式展示。inline-block元素以内联块的方式展示。none隐藏元素。
none可以隐藏页面上的元素

positive定位

  • fixed:固定定位,滚动条滚动时还保持原位(比如固钉那种)
  • relative:相对定位,搭配left等属性进行相对于原始位置的位移
  • absolute:绝对定位,完全不会动

CSS3

新增属性选择器

选择器描述E[attr^=“xx”]选择元素 E,其中 E 元素的 attr 属性是以 xx 开头的任何字符。E[attr$=“xx”]选择元素 E,其中 E 元素的 attr 属性是以 xx 结尾的任何字符。E[attr*=“xx”]选择元素 E,其中 E 元素的 attr 属性是包含 xx 的任何字符。

子类选择器

选择器描述E:first-child选择元素 E 的第一个子元素。E:last-child选择元素 E 的最后一个子元素。E:nth-child(n)选择元素 E 的第 n 个子元素,n 有三种取值,数字、odd 和 even。注意第一个子元素的下标是 1。E:only-child选择元素 E 下唯一的子元素。E:first-of-type选择父元素下第一个 E 类型的子元素。E:last-of-type选择父元素下最后一个 E 类型的子元素。E:nth-of-type(n)选择父元素下第 n 个 E 类型的子元素,n 有三种取值,数字、odd 和 even。E:only-of-type选择父元素唯一的 E 类型的子元素。E:nth-last-child(n)选择所有 E 元素倒数的第 n 个子元素。E:nth-last-of-type(n)选择所有 E 元素倒数的第 n 个为 E 的子元素。

UI伪类选择器

根据当前状态选择元素
选择器描述:focus给获取焦点的元素设置样式。::selection给页面中被选中的文本内容设置样式。:checked给被选中的单选框或者复选框设置样式。:enabled给可用的表单设置样式。:disabled给不可用的表单设置样式。:read-only给只读表单设置样式。:read-write给可读写的表单元素设置样式。:valid验证有效。:invalid验证无效。

文本阴影

text-shadow: x-offset y-offset blur color;

文本溢出

text-overflow: clip|ellipsis;

属性值描述clip截取文本。ellipsis用省略号来截取文本。

圆角边框

border-radius: 取值;

盒子阴影

感觉是复制一个盒子并置底,但可以偏移以及改颜色

box-shadow: h-shadow v-shadow blur spread color inset;

值说明h-shadow必选,水平阴影的位置,允许负值。v-shadow必选,垂直阴影的位置,允许负值。blur可选,模糊距离。spread可选,阴影的大小。color可选,阴影的颜色。inset可选,将外部阴影改为内部阴影。

背景

前文已提及,这里主要是说明可以放置多个背景图,如

background-image:url(),url(), ...,url();/*图片显示的位置*/background-position: position1, position2, ..., positionN;

就可以做到多个图片
在这里插入图片描述

渐变

线性渐变

background-image:linear-gradient(side-or-corner|angle, linear-color-stop);

属性即从哪到哪/角度,开始颜色,结束颜色

background-image:linear-gradient(to right, #ff9d72, #c6c9ff);

径向渐变

即从元素中心开始的渐变

background-image:radial-gradient(shape, color-stop);

属性为渐变部分的形状(circle、ellipse),颜色为起始和结束

重复径向渐变

background:repeating-radial-gradient(extent-keyword, color-stop);

做出这种效果
在这里插入图片描述
属性extent-keyword看不懂
在这里插入图片描述

转换

旋转

注意旋转的角度的单位是dag,正数是顺时针

transform:rotate(角度);/*元素按照指定角度绕中心旋转*/transform:rotateX(角度);/*元素按照指定角度绕x轴旋转*/transform:rotateY(角度);/*元素按照指定角度绕y轴旋转*/

平移

移动值就是普通的尺寸单位了
正数是向右向下

transform:translate(移动值);/*元素按照指定值沿着 X 轴和 Y 轴移动*/transform:translateX(移动值);/*元素按照指定值沿着 X 轴移动*/transform:translateY(移动值);/*元素按照指定值沿着 Y 轴移动*/

缩放

可以理解为拉伸
大于1为拉长,否则为缩短

transform:scale(缩放值);/*元素按照指定值沿着 X 轴和 Y 轴缩放*/transform:scaleX(缩放值);/*元素按照指定值沿着 X 轴缩放*/transform:scaleY(缩放值);/*元素按照指定值沿着 Y 轴缩放*/

过渡

transition: 指定属性 持续时间 速度曲线 开始时间;

/*ease-in-out 慢速开始慢速结束*/transition: transform 1s ease-in-out;/*分四步*/transition: transform 4s steps(4);

速度曲线
在这里插入图片描述

动画

定义动画

@keyframes 动画名{0%{样式属性:属性值;}25%{样式属性:属性值;}50%{样式属性:属性值;}100%{样式属性:属性值;}}

挂载动画

animation: 动画名 完成动画的周期 是否重复;

在这里插入图片描述

Flex弹性!

主轴是从左到右,cross轴是从上到下
在这里插入图片描述
控制沿哪条轴,以及起点在轴起点还是终点

flex-direction: row | row-reverse | column | column-reverse;

控制弹性盒子的换行问题,wrap为溢出则下一行,nowrap为溢出不换行

flex-wrap: nowrap|wrap|wrap-reverse|initial|inherit;

设置子盒子在纵轴上的对齐情况

align-items: flex-start | flex-end | center | baseline | stretch;

属性值描述flex-start居上flex-end居下center垂直居中baseline如弹性盒子元素的行内轴与侧轴为同一条,则该值与 flex-start 等效。其它情况下,该值将参与基线对齐stretch撑开,如果指定侧轴大小的属性值为 auto,则其值会使项目的边距盒的尺寸尽可能接近所在行的尺寸,但同时会遵照min/max-width/height 属性的限制。设置多行子盒子的对齐情况

align-content: flex-start | flex-end | center | space-between | space-around |
  stretch;

媒体查询

根据不同媒体设备设置不同的属性

@media mediatype and|not|only(media feature){
    CSS-Code;}
  • mediatype:有all(所有)、print(打印机和打印预览)、screen(电脑屏幕、平板、手机)、speech(屏幕阅读器等发声设备)
  • media featuremediaeture值描述max-width定义输出设备中的页面最大可见区域宽度max-height定义输出设备中的页面最大可见区域高度min-width定义输出设备中的页面最小可见区域宽度min-height定义输出设备中的页面最小可见区域高度orientation视口(viewport)的旋转方向。portrait :表示 viewport 处于纵向,即高度大于等于宽度 ; landscape :表示

根据不同的媒体设备,引入不同的外部样式表

<linkrel="stylesheet"media="mediatype and|not|only (media feature)"href="mystyle.css">

根据屏幕大小调整颜色

@media screen and(max-width: 500px){body{background-color: red;}}@media screen and(min-width: 800px){body{background-color: green;}}@media screen and(min-width: 1024px){body{background-color: blue;}}

JavaScript

知识点重要指数JavaScript 基础语法🌟🌟🌟🌟🌟DOM 与 BOM🌟🌟🌟🌟JavaScript 内置对象🌟🌟🌟🌟JavaScript 事件🌟🌟🌟🌟🌟JavaScript AJAX🌟🌟🌟🌟🌟正则表达式🌟🌟

日志输出

let l =[1,2,3];
console.log(l);
document.write(l);

基本数据类型

  • 基本数据类型:字符串(string)、数字(number)、布尔(boolean)、空(null)、未定义(undefined)。
  • 引用数据类型:对象(object)。 基本数据类型是传值、栈存储 引用数据类型是传引用、堆存储

查询类型用

typeof a 

循环

返回下标

for(i in obj){}

返回元素

Math

在这里插入图片描述

日期

let date =newDate();

在这里插入图片描述

数组操作

arr.slice(left, right)//切片左闭右开
arr.unshift(var)//前插
arr.shift()//前删
arr.sort()
arr.reverse()//排序并逆序
arr.join();//拼接数组元素为字符串
arr.length  //注意不是函数!
arr1.concat(arr2)
arr.includes(var)//数组中是否有某值(python的in)
arr.toString()//数组元素转字符串
arr.indexof(var)//查找对应元素的下标

字符串操作

s.length //获取长度
s.toLowerCase()//转小写
s.toUpperCase()
s.charAt(idx)//获取对应下标的字符
s.substring(begin,end)//截取子串,左闭右开
s.replace(olds,news)//先查找原字符串中的olds,然后用news去替换
s.split(separator)//按分隔符分割字符串
s.indexof(c)//查找该字符第一次出现的下标

DOM

Document Object Model(文档对象模型)

属性描 述document.title获取文档的 title 元素。document.body获取文档的 body 元素。document.URL获取文档的 URL。document.forms获取文档的 form 元素。document.images获取文档的 img 元素。document.links获取文档的 a 元素。document.cookie获取文档的 cookie。document.referrer返回来用户当前浏览页面的 URL。方法描 述document.getElementById()通过 id 获取元素。document.getElementByTagName()通过标签名获取元素。document.getElementByClassName()通过 class 获取元素。document.getElementByName()通过 name 获取元素。document.querySelector()通过选择器获取第一个元素。document.querySelectorAll()通过选择器获取所有元素。document.createElement()创建元素节点。document.createTextNode()创建文本节点。document.write()输出内容。document.writeln()输出内容并换行。

浏览器对象属性

在这里插入图片描述
在 window 下面有:

  • document 是 DOM 对象。

  • location 是用于获取或设置窗体。

  • navigation 包含浏览器配置相关的信息。

  • history 浏览器的历史记录。

  • screen 用于显示设备信息。
    方法描 述alert()显示一个警告框。prompt()显示可提示用户输入的对话框。confirm()显示一个有确认和取消按钮的对话框。open()打开一个新的浏览器窗口。close()关闭浏览器。print()打印当前窗口内容。

    事件函数

  • 鼠标事件: - onclick- onmouseover- onmouseout- onmousedown- onmouseup- onmousemove

  • 键盘事件: - onkeydown- onkeyup

  • 表单事件: - onfocus- onblur

用例如下

 item.onclick=function(){...};

事件对象

0级事件是onclick这种,后面的相同会覆盖前面的
2级事件是addEventListner这种,不会有覆盖现象

原生Ajax

//创建Ajax对象if(window.XMLHttpRequest){// Mozilla,Safari,IE7+ 等浏览器适用
  httpRequest =newXMLHttpRequest();}elseif(window.ActiveXObject){// IE 6 或者更老的浏览器适用
  httpRequest =newActiveXObject("Microsoft.XMLHTTP");}//发送请求// 规定发送请求的一些要求
httpRequest.open("method","url", async);// 将请求发送到服务器
httpRequest.send();//注册回调函数
httpRequest.onreadystatechange=function(){if(httpRequest.readyState ==4&& httpRequest.status ==200){// 请求成功执行的代码}else{// 请求失败执行的代码}};

正则表达式

var regx ="/expr/";let flag = regx.test(s)
/^[a-zA-Z]{6,10}$/

,只允许字母,6~10个
花括号是范围,圆括号是多个选项

jQuery

知识点重要指数jQuery 基础语法🌟🌟🌟🌟jQuery 选择器🌟🌟🌟jQuery 事件🌟🌟🌟jQuery DOM 操作🌟🌟🌟🌟jQuery 效果🌟🌟jQuery 遍历🌟🌟🌟jQuery AJAX🌟🌟🌟🌟🌟

选择器

//标签选择器$("div").css("color","blue");//id选择器$("#test").css("color","blue");//类名选择器$(".demo").css("color","blue");//群组选择器(就是把多个合并到一个了)$("h3,span").css("color","blue");//后代选择器一样//子代选择器一样,是>箭头//后面所有兄弟选择器,比如div~p,即这个div后面的所有p//后面一个兄弟选择器,比如div+p,即后面的第一个

属性选择器
选择器说明E[attr]对带有 attr 属性的 E 元素进行操作。E[attr=“value”]对 attr 值等于 value 的 E 元素进行操作。E[attr !=“value”]对 attr 值不等于 value 的 E 元素进行操作。E[attr ^=“value”]对带有 attr 属性,其属性值以 value 字符串开头的 E 元素进行操作。E[attr $=“value”]对带有 attr 属性,其属性值以 value 字符串结尾的 E 元素进行操作。E[attr *=“value”]对带有 attr 属性,其属性值包含 value 字符串的 E 元素进行操作。E[attr ~=“value”]对带有 attr 属性,其属性值为 value 或者包含 value 的 E 元素进行操作。E[attr =“value”]对带有 attr 属性,其属性值为 value 和以 value- 开头的 E 元素进行操作。

又是伪类

位置伪类

下标从0开始
选择器说明:first选取指定元素的第一个该元素。:last选取指定元素的最后一个该元素。:odd选取指定元素序号为奇数的所有该元素。:even选取指定元素序号为偶数的所有该元素。:eq(n)选取指定元素的第 n 个该元素。:lt(n)选择指定元素中小于 n 的所有该元素。:gt(n)选取指定元素中大于 n 的所有该元素。

可见性选择器

选择器说明:visible选取所有可见元素。:hidden选取所有不可见元素。

内容伪类选择器

选择器说明:contains(text)对包含指定 text 文本的元素进行操作。:has(selector)对包含指定选择器的元素进行操作。:parent对含有文本或者子元素的元素进行操作。:empty对空元素进行操作。

表单伪类选择器

选择器说明:input选取所有 input 元素。:button选取所有 input 类型为 button 的元素。:submit选取所有 input 类型为 submit 的元素。:reset选取所有 input 类型为 reset 的元素。:text选取所有 input 类型为 text 的元素。:textarea选取所有多行文本框。:password选取所有 input 类型为 password 的元素。:radio选取所有 input 类型为 radio 的元素。:checkbox选取所有 input 类型为 checkbox 的元素。:image选取所有图片域。:file选取所有 input 类型为 file 的元素。

状态选择器

选择器说明:checked选取所有被选中的表单元素。:selected选取被选中的表单元素项。:enabled选取所有可用的表单元素。:disabled选取所有不可用的表单元素。:read-only选取只读权限的表单元素。:focus选取所有获得焦点的表单元素。

事件

$("#btn").click(function(){alert("嘻嘻!欢迎到来");});

在这里插入图片描述
右键菜单

oncontextmenu

点击左键中键的触发事件顺序:按下->松开->单击
点击右键的触发事件顺序:按下->松开->单击
在这里插入图片描述

在这里插入图片描述
在回调函数里用

 $(this).val()

,获得当前值

滚动事件

item.scroll(回调函数);

绑定事件

item.on(事件类型, 事件处理函数);item.bind(事件类型, 事件处理函数);

合成事件
即一次组合了多个事件的函数
如hover,同时有移入和移出

$("div").hover(function(){
    console.log("移入")},function(){
    console.log("移出")});

自定义事件
即自己定义一个事件名(就像click、close那些),然后通过trigger(时间名)触发他

$("div").on("changecolor",function(){$(this).css("background-color","#ffce89");});$("div").click(function(){$("div").trigger("changecolor");});

事件对象

在事件回调函数里调用,使用

event.type

event.event

可以

$(event.target).css(...)

如果回调函数的形参不传值,默认为event,否则可以写个e,然后

e.target

DOM操作

//增let item =$("<div style='width:100px'>你好</div>");//加不加to,就是xx添加了xx,和xx添加到xx的区别//子级插入方法,包括 prepend()、prependTo()、append()、appendTo()。//同级插入方法,包括 before()、insertBefore()、after()、insertAfter()。
item.append(i);//插入子元素//删
item.remove()//清除自身及子元素
item.empty()//清除子元素
item.removeAttr("属性名");
item.removeClass("类名");//查
item.attr("属性名");// 获取属性
item.css("属性名");//改$("#olditem").replaceWith(newItem);
item.attr("属性名","属性值");// 修改属性
item.css("属性名","属性值");//遍历$("div").each(function(index, element){$(this).css("background-color", colors[index]);});//切换
item.toggleClass("类名");//有该类名则删除,没有则添加//获取元素内部标签和内容// 获取元素内容
item.html();// 设置元素内容
item.html("内容");//只获取元素内部内容//获取
item.text();//设置
item.text("1234567");//获取表单元素的值$("#phone").val();$("#phone").val("1234567");

动画

// 隐藏和显示
item.show(speed, easing, callback);
item.hide(speed, easing, callback);//淡入淡出
item.fadeIn(speed, easing, callback);
item.fadeOut(speed, easing, callback);//添加动画,如$().animate({ style }, speed, callback);
item.animate({left:"+=100px"});//顺序执行多个动画,执行完上一个才执行下一个,如
item.animate({top:"5px"}).animate({color:"#3252988"});//停止动画
item.stop(stopAll, goToEnd);//暂停所有动画还是只停止当前动画,是否直接跳转到最后//延迟动画
item.delay(3000).animate({"background-color":"#ddffbc"});

遍历

//遍历祖先//直系父亲
item.parent()//所有祖先
item.parents()//遍历兄弟//往前找
item.prev()
item.prevAll()//往后找
item.next()
item.nextAll()//所有兄弟
item.siblings();//遍历子元素//儿子们
item.children()
item.children(selector)//后代们
item.find()
item.children(selector)

判断

//是否有该类名
item.hasClass(className);//返回布尔//找对应下标的标签var $li =$("li");for(var i =0; i <3; i++){
   $li.eq(i).css("color","#77acf1");}//查看是否在状态中let value =$("div").is(":animated");//排除
item.not(selector|function)

AJAX

$.get(url, data,callback(data, status, xhr), dataType);
$.post同理
$.getJSON(url [,data][,success(data, textStatus, jqXHR)])

在这里插入图片描述

ES6

知识点重要指数let 和 const 命令 🌟🌟🌟class 🌟🌟🌟set 和 map 🌟🌟Proxy 🌟🌟字符串、函数、数组和对象的扩展 🌟🌟🌟异步编程与模块化 🌟🌟🌟

ES6介绍

2015年的一个JS版本,叫ECMAScript,简称ES6

新增关键字

let 作用域是块,没有提升机制了
const 只读常量。常量的引用,内部指向的对象元素还是可以改

字符串的扩展

  • 模板字面量,即用``来包住字符串
  • 字符串占位符,即let str =`rust`;let message =`I like ${str}.`;
  • 标签模板:过滤HTML字符串,防止用户输入恶意内容;多语言的转换
  • 新增api:s.startswith(ss);s.endswith(ss);s.repeat(n);//返回重复n次的字符串s.replaceAll(olds,news);//替换所有匹配的

数组的扩展

//创建数组
Array.of(item1,item2,...)//非数组转数组
Array.from(其他可迭代对象)//查找//自定义过滤条件,只返回第一个匹配的值,找不到返回undefinedlet val = arr.find(function(value){return value >2;});//这个返回的是匹配的值的下标,找不到返回-1let idx = arr.findIndex(function(value, index, arr){return value =="老虎";});//填充原数组的元素,左闭右开
array.fill(value, start, end);//获取可迭代集合的键值对,返回的是可迭代对象,可以用扩展运算符(...)展开
arr.entries()、arr.keys()、arr.values()//新循环,获取每个值for(let name of arr){}//扩展运算符,可以用在数组上也可以用在对象上let arr =[...iterable,1,2,3];let newStu ={...stu};

函数的扩展

//注意默认值参数要放到后面,不然无法忽略functionfun(a=1,b=2){}//不定长参数,用一个数组接收了myfun(param,...rest);//箭头函数(param1,param2,...,paramN)=>{expression}

面向对象

类的引入

classMyClass{// constructor 方法是类的默认方法constructor(num){this.num = num;this.enginesActive =false;}// 相当于 MyClass.prototype.startEnginesstartEngines(){
    console.log("staring...");this.enginesActive =true;}}const myclass =newMyClass(1);
myclass.startEngines();

继承

classDogextendsAnimal{}

使用父类:super

静态方法、属性

// 对应 DogType.createstaticcreate(name){returnnewDogType(name);}static name ="dog";

私有方法和属性

#address =`X 星系`;#send(){}

对象拷贝

newStu ={...stu}

Object新增

//判断let res = Object.is(a,b)//将后面三个合并到第一个中
Object.assign(newPerson,legs,head,hands)

Set

去重集合

let s =newSet()
s.add(1)
console.log(l.size)
s.delete(val)
s.has(1)
s.clear()
s.forEach((item)=>{})

还有个WeakSet,不写了

Map

let m =newMap();
m.set(k,v);
m.get(k);
m.has(k);
m.delete(k);
m.clear();
m.forEach((k,v)=>{})

异步编程Promise

//resolve和reject是执行成功和失败的回调let p =newPromise(function(resolve, reject){// 此处做一个异步的事情sleep(5);if(){resolve("1234")}else{reject("qwer")}});//设置两个回调
p.then((param)=>{},(param)=>{})

async和await

await必须写在async中,必须等await执行完了才能继续进行

导入和导出

export a
export b
export{c,d asD}
<script type="module">import{ a asA, b, c,D}from"./outfile.js";</script>

Proxy

let dog ={name:"闷棍儿"};let pdog =newProxy(dog,{get(target, propKey){// 遍历目标对象的属性键值if(propKey in target){return target[propKey];// 返回相应的属性值}else{thrownewReferenceError(propKey +" 属性不存在");}},set(target, propKey, value){if(propKey ==="age"){// 判断 age 属性值是否时数字if(!Number.isInteger(value)){thrownewTypeError("狗狗的年龄只能是整型哦!");}}
        target[propKey]= value;returntrue;},has(target, propKey){if(propKey =="age"&& target[propKey]<5){
          console.log(`${target.name}的年龄小于 5 岁哦!`);returntrue;}},ownKeys(){return["name","color"];},})

常用拦截方法

  • get(target, propKey, receiver)
  • set(target, propKey, value, receiver)
  • has(target, propKey)
  • ownKeys(target)

Vue.js

知识点重要指数Vue 核心🌟🌟🌟🌟🌟Vue 组件🌟🌟🌟vue-router🌟🌟vuex🌟🌟axios🌟🌟🌟🌟

v-html

渲染成标签

计算

computed:{reverseName:function(){returnthis.name.split("").reverse().join("");},fullName:{// getterget:function(){returnthis.firstName +this.lastName;},// setter  直接改变计算属性 fullName 的值就可以触发 setter this.fullName='XX'set:function(newName){var name = newName;this.firstName = name.slice(0,1);// 取新值的第一个字符this.lastName = name.slice(1);// 从新值的第二个字符开始取值},},},});

监听

// watch 监听属性watch:{// 监听新旧值  监听属性有两个参数,第一个新值,第二个旧值msg:function(newVal, oldVal){alert("新值"+ newVal +"----"+"旧值"+ oldVal);},},

过滤

{{msg|toUpperCase}}filters:{// toUpperCase 定义一个字符串转大写的过滤器toUpperCase:function(val){return val.toUpperCase();},}

流程控制

v-if
v-else
v-show
v-for="(item,idx) in arr"

方法

methods:{// 定一个一个获取数组内奇数的方法 filter 数组对象的过滤方法getOddNumber:function(){returnthis.numberArray.filter(function(number){return number %2===1;});},},

修饰符

比如prevent,可以阻止默认事件

<formaction="/"v-on:submit.prevent="submit"><buttontype="submit"></button></form>

在这里插入图片描述

键盘修饰符

.enter
.tab
.delete (捕获“删除”和“退格”键)
.esc
.space
.up
.down
.left
.right

 <inputtype="text"v-on:keyup.enter="alert('你按了enter,确定输入完毕?')"/><[email protected]="alert('你同时按了鼠标点击和ctrl')">Do something</div>

精准
@click.ctrl.exact  //有且只有ctrl+鼠标左键按下时才触发

@click.right @click.middle @click.left

表单处理

在这里插入图片描述

多选框

<inputtype="checkbox"id="syl1"value="syl1"v-model="checkedNames"/><labelfor="syl1">syl1</label><inputtype="checkbox"id="syl2"value="syl2"v-model="checkedNames"/><labelfor="syl2">syl2</label><inputtype="checkbox"id="syl3"value="syl3"v-model="checkedNames"/><labelfor="syl3">syl3</label>

data() {
 return {
    checkedNames: [],
  };
},

选择框

<selectv-model="selected"><optiondisabledvalue="">请选择</option></select>

其他修饰符

//不即时更新,等blur了再更新
<inputv-model.lazy="msg"/>
//将输入值转为number
<inputv-model.number="number2"type="number"/>
//自动去除首尾空格
<inputv-model.trim="msg"type="text"/>

组件化

TODO

组件通信

TODO

生命周期

TODO

Axios

TODO

Vue-Router

<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"/><metahttp-equiv="X-UA-Compatible"content="IE=edge"/><metaname="viewport"content="width=device-width, initial-scale=1.0"/><title>Document</title><scriptsrc="vue.min.js"></script><scriptsrc="vue-router.js"></script></head><body><divid="app"><h1>路由的使用</h1><p><!-- 使用 router-link 组件来导航 --><router-linkto="/home">首页</router-link><router-linkto="/hot">热门</router-link><router-linkto="/class">分类</router-link></p><!-- 路由出口 --><!-- 路由匹配到的组件将渲染在这里 --><router-view></router-view></div><script>const Home ={template:"<div>首页</div>"};const Hot ={template:"<div>热门</div>"};const Class ={template:"<div>分类</div>"};// 定义路由const routes =[{path:"/home",component: Home },{path:"/hot",component: Hot },{path:"/class",component: Class },];// 创建 router 实例,然后传 routes 配置const router =newVueRouter({
        routes,});// 创建和挂载根实例const app =newVue({
        router,}).$mount("#app");</script></body></html>

Vuex

ElementUI

知识点重要指数基础组件🌟🌟🌟表单和表格组件🌟🌟🌟弹出组件🌟🌟导航组件🌟🌟

ECharts

知识点重要指数ECharts 基础语法🌟🌟🌟ECharts 绘制图表🌟🌟🌟ECharts 异步数据加载和更新🌟🌟🌟ECharts 交互组件🌟🌟ECharts 事件处理🌟


本文转载自: https://blog.csdn.net/qq_51955445/article/details/129345923
版权归原作者 最 上 川 所有, 如有侵权,请联系我们删除。

“蓝桥web基础知识学习”的评论:

还没有评论