webUI1

1. HTML简介

超文本标记语言(英语:HyperText Markup Language)是一种用于创建网页的标准标记语言。

使用 HTML 来建立自己的 WEB 站点,HTML 运行在浏览器上,由浏览器来解释呈现最后的效果。

是一门解释型语言。

2. 基本语法

1)源代码文件 *.html , *.htm

2)不区分大小写,不识别源代码的空格、换行

3)允许使用注释

<!-- 注释 -->

4)标记的形式

形式一:
<标记 属性1="值"  属性2="值"  ...> 文本或者其他标记 </标记>
形式二:
<标记 属性1="值"  属性2="值"  ... />

5)页面基本结构

<!DocType HTML>
<html>
   <head>
       <meta charset="UTF-8" /> <!-- 告诉浏览器使用UTF-8编码格式解释页面-->
       <title>页面标题</title>
   </head>
   
   <body>
       <!-- 正文内容 -->
   </body>
   
</html>

6)所有的标记都支持如下属性

style -- 设置css样式

class -- 设置类名,或者加载css类选择器

id -- 设置id标识,或者加载css的ID选择器,值在整个页面具有唯一性

title -- 设置鼠标移到该标记所表现的内容上显示的文本

3. 文档常用标记

tip : 标记不区分大小写,源码不识别空格与换行

1)html、head、body、title

2)标题子标记 h1---h6 【加粗,大小不同,段间距】 

3)段落 p  块级

4)文本格式化标记

https://www.runoob.com/html/html-quicklist.html

b、strong

i、em、斜体

address(斜体,单独成行)

u 、 del 下划线

sub、sup 上标  下标

blockquote -- 引用【左右缩进】

pre -- 预览效果,所写即所见

<br/> -- 换行

<wbr /> -- HTML5新增,软换行,更好的指示英文单词的换行

<hr/> -- 水平线

code 代码颜色浅小

cite 斜体

4. 符号实体

https://www.runoob.com/html/html-entities.html

在html源代码中用到了一些符号,比如 <, >

页面就是需要呈现这些符号,此时可以使用符号实体

符号实体对大小写敏感,都是以 & 开头,以 ; 结尾

&nbsp;    空格
&lt; <
&gt; >
&copy; 圈c
&amp; 圈R
&reg; 已注册
&trade; TM  

5. 颜色设置

https://www.runoob.com/html/html-colors.html

有两种方式 : 颜色英文单词,比如 red ;RGB十六进制整数表示

RGB 颜色由一个十六进制符号来定义,这个符号由红色、绿色和蓝色的值组成(RGB)。每种颜色的最小值是0(十六进制:#00)。最大值是255(十六进制:#FF)。

颜色值 从 #000000 --- #FFFFFF

tip : 如果颜色值六位中每两个位置颜色值一样(#AABBCC),可以使用三位数字(#ABC)表示法:

比如 #112233 , 可以表示为 #123

tip : 推荐使用css来设置样式

比如 : <标记 style=" color:文字色"> ... </标记>

6. 块标记和行标记

<div> -- div中的内容独立成行

<div id = "container">

  <div class="header"></div>

  <div class="body"></div>

  <div class="footer"></div>

</div>

<span> -- span中的内容没有任何特殊效果 和style搭配使用

tip : 一般搭配css一起使用

7. 路径

URL : 统一资源定位符 ==> 用一个字符串表示一个资源(图片,音频,css文件,js文件,html文件等)所在位置。

以上所说的字符串描述方式,两种:一种是绝对路径,一种是相对路径

绝对路径:从根位置出发查找资源所经过的字符串,比如

D:\^软通资料^\2021课程\2021大软课程\开学典礼.ppt

/opt/home/oo/html/test.html

https://www.runoob.com/html/html-colors.html

相对路径 : 【不要以驱动器符号,或者/ , \ , 或者 http,https开头

从当前文件查找目标资源文件所经过的路径。

进入目录使用 "目录名/" , 返回上一级目录使用"../"

WebUI-56/笔记.md

./WebUI-56/笔记.md

../教材/node.js.docs

../../项目答辩评审表.xlsx

结论 :站内资源访问使用相对路径;站外资源访问使用以http或者https开头的绝对路径

    相对路径描述举例:
Demo/
index.html
pages/
admin/
userManager.html
login.html
assets/
imgs/
default.png
index.html 引用 default.png : assets/imgs/default.png
login.html 引用 index.html : ../index.html
login.html 引用 default.png : ../assets/imgs/default.png
userManager.html 引用 default.png : ../../assets/imgs/default.png

8. 超级链接 a

1)超链接实现

<a href="链接资源url" target="目标资源打开位置">链接表现内容--文字或图片</a>

【说明】

- 链接表现:默认外观 文字蓝色并且带有下划线,链接过后是紫色,鼠标以上链接内容呈现小手状

- target :打开新页面

_self (默认值) 在当前窗口打开新页面

_blank 新标签页打开

_top

_parent

frameName

2)锚点链接

定位到某个页面的特定位置

需要两步 :

-- 制作锚点 <a name="锚点名"> 。。。</a> , 设置在要定位的位置上

-- 编写链接 <a href="#锚点名">。。。。</a>

如果定位本页面锚点,可以没有url

9. 多媒体资源加载——必加属性 src

1)加载图片

tip : img 是行内标记,但是支持css设置宽和高。

<img src="图片源url" width="" height="" alt="图片不能加载时显示的文本" title="鼠标移上文本" />

2)加载音频 : mp3 , wav , ogg

tip : 记得设置controls属性,chrome与firefox没有控制台,不自动播放

两种描述方式 :
方式一:
<audio src="url" controls>
 controls控制台 必须加  audio行内元素
        音频不能加载时显示的文本
</audio>
方式二:
<audio controls>
       <source src="url" />
       <source src="url" />
       <source src="url" />
</audio>

3)加载视频 : MP4, WebM, 和 Ogg:

两种描述方式 :
方式一:
<video src="url" controls>
      视频不能加载时显示的文本
</video>
方式二:
<video controls>
       <source src="url" />
       <source src="url" />
       <source src="url" />
</video>

4)Flash资源加载

tip : 需要浏览器安装flash播放器插件

<embed src="" width="" height="" />

10. 列表

tip : li单独成行,而且右侧有缩进

1)无序列表 ul + li 块级标签独立成行

<ul type="disc|square|circle">
  <li>....</li>
  ...
</ul>

<ul>
<li><a href="#">MyBatis</a> </li>
<li>SpringMVC</li>
<li>Spring</li>
</ul>

.nav ul , .nav li {
margin: 0;
padding: 0;
list-style-type: none;
}
.nav li {
display : inline-block;行内元素
width: 100px;
float : left ;漂浮
text-align: center;
background-color: cornsilk;
margin-right: 2px;
}
.clear {
clear : both;
}

 

2)有序列表 ol + li

<ol type="1|i|I|A|a" reversed>倒数
  <li>....</li>
  ...
</ol>

3)定义列表 dl + dt + dd 分层次

<dl>
   <dt>SSM</dt>
   <dd>SpringMVC</dd>
   <dd>Spring</dd>
   <dd>MyBatis</dd>

   <dt>SSH</dt>
   <dd>Strusts2</dd>
   <dd>Spring</dd>
   <dd>Hibernate</dd>
</dl>

11. 框架

通过使用框架,你可以在同一个浏览器窗口中显示不止一个页面。

<iframe src="加载html的url" width="像素值或者百分比值" height="" name="自定义框架名称" frameboder="0|1"></iframe>

如果超链接点击,希望在iframe窗口显示 :

-- iframe设置name属性

-- a 标记的target值时iframe的name值

如果iframe中加载的页面希望在顶级窗口打开,则a标记的target属性设置值为 _top

12. 框架集【废弃】【frameset+frame】

13. 表格

1)基本设置

-- 容器 table

-- 区域划分 thead , tbody , tfoot , caption表格标题

-- table,thead,tbody,tfoot内部放置 tr(行)

-- tr中放置 td或者th

2)table的主要属性

width

border="0|正整数"

cellspacing="单元格与单元格之间的距离"

cellpadding="单元格文本和单元格边框之间的距离"

3)单元格合并,td或者th的属性

tip: 单元格合并时不能跨越区域 thead,tbody,tfoot

colspan="跨列合并数"

rowspan="跨行合并数"


### 14. fieldset

​ 区域块 ==》外围边框线

​ 可以通过legend标记设置该区域块的标题,该标题将显示在边框线左上角位置。

### 1. 表单

【掌握表单元素标记以及属性;理解表单提交两种方式差异性】

#### 1)表单标记 form

​ -- 如果点击表单的“提交”按钮,则页面会发生跳转,跳转到action所设置的url位置;可以通过javascript来阻止表单的提交。

​ -- 表单元素一定要设置name属性,不然表单元素的值不能提交到服务器端

​ -- 提交到服务器上表单元素值构成形式 :

name=value&name2=value&...

​ -- 绝大多数表单元素都支持 value属性,用来设置默认值

#### 2)form的属性

| 名称 | 值 | 含义 |
| ------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| method | get\|post | 不设置该属性,默认是get<br />get方式,表单元素值绑定在url后面一起提交到服务器端 :<br /> url?name=value&name2=value&...<br />post方式,表单元素值单独发送到服务器端,安全性更高;如果表单中有文件上传,必须使用post提交表单。 |
| action | url | 设置表单提交位置,不设置该属性则提交到本页面 |
| target | 同\<a>的target | url打开位置 |
| enctype | multipart/form-data<br />默认值是<br />application/x-www-form-urlencoded | 如果表单中有文件上传,必须设置该属性,并且取值为multipart/form-data |

 

#### 3)表单元素 input 标记

​ 实现:单行文本域、密码域、单选按钮、复选框、文件域、按钮、隐藏域

​ **属性 type , 值如下**

| 值 | 表单元素 | 说明 |
| -------- | -------- | ------------------------------------------------------------ |
| text | 文本域 | 默认值 |
| password | 密码域 | |
| radio | 单选按钮 | 若干为一组的radio要设置相同的name属性,不同的value属性<br />支持checked属性来实现初始化选中 |
| checkbox | 复选框 | 若干为一组的checkbox要设置相同的name属性,不同的value属性<br />支持checked属性来实现初始化选中 |
| submit | 提交按钮 | |
| reset | 重置按钮 | |
| button | 普通按钮 | |
| file | 文件域 | |
| hidden | 隐藏域 | 页面不显示该元素,一定要设置value属性=》隐含提交到服务器 |

​ **其他属性**

| 名 | 含义 |
| ----------- | ------------------------------ |
| required | 必填项 |
| placeholder | 设置提示信息 |
| disabled | 禁用,该元素值不能提交到服务器 |
| readonly | 只读,可以获取焦点,但不能编辑 |

#### 4)表单元素 button标记--双标记

​ 三种 submit , reset , button(搭配js一起使用)

#### 5)下拉菜单或者列表

​ select (容器)+ option(选项)

​ select支持的属性

​ multiple--列表 多选  , 可以使用size="int" 列表显示项数

​ option支持的属性

​ value , selected初始化选中

​ 【html5】选项分组,实现 :

​ 将为一组的option放入一个optgroup标记内;

​ optgroup允许使用label标属性设置该组的标签

#### 6)多行文本域--双标记

​ textarea

​ 支持属性 cols , rows

#### 7)label

​ 为表单元素设置提示信息,支持for属性来绑定到表单元素上 id值 

#### 8)input标记的type属性其他值(h5)

​ 【受浏览器支持性限制】

​ email (单击提交按钮时有数据格式校验)

​ url(单击提交按钮时有数据格式校验)

​ tel(单击提交按钮时有数据格式校验)【浏览器不支持】

​ number 该类型表单元素可以设置min与max

​ range 该类型表单元素可以设置min与max

​ color 提交值是 #RGB

​ search

​ date、time、datetime、datetime-local、month、week

> tip : 一般如果输入email或者tel,一定要使用js进行数据格式校验
>
> ​ 如果页面中使用日期,时间,日期时间,都是其他插件实现
>
> ​ 日期提交到服务器上,年月日使用 "-" 分隔

#### 9)datalist的使用

​ datalist+option为输入框值提供选择

```html
<p>
<label>input+datalist</label>
<input type="text" name="from" list="fromList"/>
<datalist id="fromList">
<option value="绑定">融创软通</option>
<option>中软国际</option>
<option>中天</option>
<option>IBM</option>
</datalist>
</p>
```

### 2. Html5中结构语义标记

​ 这些标记的外观表现就是块级容器,独立成行

​ 【搭配css来页面布局】

​ header , nav , aside , article , section , footer

### 3. Html5 其他标记

​ -- figure 与 caption

​ 规定独立的流内容(图像、图表、照片、代码等等)。

```html
<figure>
<figcaption>这是一只猴子</figcaption>
<img src="../assets/imgs/female.jpg" height="190" width="190"/>
</figure>
```

​ -- details + summary

```html
<details>
<summary>Copyright 1999-2011.</summary> <!-- 显示 -->
<!-- 下方内容可以展开/隐藏 -->
<p> - by Refsnes Data. All Rights Reserved.</p>
<p>All content and graphics on this web site are the property of the company Refsnes Data.</p>
</details>
```

​ -- ruby + rp + rt

​ 为中文加汉语拼音 ,ruby是容器,rt是注释音标,rp是浏览器不支持ruby时所显示的内容

```html
<ruby>
汉 <rp>(</rp><rt>Han</rt><rp>)</rp>
字 <rp>(</rp><rt>zi</rt><rp>)</rp>
韩 <rt>han</rt>
</ruby>
```

​ -- mark

​ 文本做标记 ==》黄色底背景

​ -- time

​ 无效果,一般将日期时间放入该标记内

​ -- progress(双标记)

​ 进度条,可以设置min,max,value属性,动态效果要结合js使用

​ -- dialog

​ 目前不能实现对话框

```html
<p>
这是一个<mark>带有标记内容的段落</mark>
<br/><time>登录时间为 2012-03-16 13:31:31</time>
</p>

<p><dialog open>This is an open dialog window</dialog></p>
<progress min="1" max="100" value="30"></progress> 30%
```

### 4. head标记

​ 该标记内部可以嵌套如下标记

​ -- title 设置标题

​ -- style 设置css样式

​ -- link 引入外部css文件

​ -- script 设置js内容或者引入外部js文件

​ -- base (略)为页面中所有相对路径设置基路径

​ -- meta 设置页面元信息

### 5. meta标记

​ 通常用于指定网页的描述,关键词,文件的最后修改时间,作者,和其他元数据。

​ 元数据可以使用于浏览器(如何显示内容或重新加载页面),搜索引擎(关键词),或其他Web服务。

```html
实例 1 - 定义文档关键词,用于搜索引擎:
<meta name="keywords" content="HTML, CSS, XML, XHTML, JavaScript">

实例 2 - 定义web页面描述:
<meta name="description" content="Free Web tutorials on HTML and CSS">

实例 3 - 定义页面作者:
<meta name="author" content="Hege Refsnes">

实例 4 - 每30秒刷新页面:
<meta http-equiv="refresh" content="30">

实例 5 - 页面编码设置
<meta charset="UTF-8" />
```

> tip : meta 的viewport属性
>
> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">

1. CSS简介

-- CSS 指层叠样式表 (Cascading Style Sheets)

-- 修饰页面==> CSS样式作用在HTML元素上

-- 实现页面内容和表现外观相分离

-- 提高性能和页面加载速度 ==> 样式可以反复使用

2. CSS样式的定义位置

1)内联样式表【该样式只能应用在当前HTML元素】

<标记 style="css属性描述"></标记> <!-- 不涉及选择器-->

2)内部样式表【只限当前页面使用】

<head>
   <style type="text/css">
  /* CSS样式定义 */
   </style>
</head>

3)外部样式表(独立的css文件)【可以被应用在任何一个HTML页面】

-- 【推荐】 <link>
<link rel="stylesheet" href="css文件url" />
-- 导入式
<head>
  <style type="text/css">
  @import url("css文件url")
  </style>
</head>

tip : 当一个标记上所设置的以上样式中某个css属性值冲突,则采取就近原则

内联样式 > 内部样式 > 外部样式

3. CSS 样式的定义语法

-- 允许使用注释,/* 注释 */

-- 尺寸、大小必须使用单位 :px(像素),pt(磅),em(字)

-- 颜色值支持两种形式:名字和RGB值

-- CSS的属性描述为 : 属性名 : 值 ;

选择器 {
/* css属性描述 */
  属性 : 值 ;
  属性2 : 值 ;
  ...
}

4. 选择器

https://www.runoob.com/cssref/css-selectors.html

1)基本选择器

-- HTML标记选择器

html标记 {
css 样式
}
该样式自动应用在页面所有对应的标记上

-- ID选择器

#名称{
css 样式
}

应用 :
<标记 id="名称">

-- 类选择器

.名称{
css 样式
}

应用 :
<标记 class="名称">

-- 应用在所有html元素

* {
   css 样式
}

-- 多个选择器组合,使用逗号间隔

选择器1 , 选择器2 , ... {
css 样式
}

应用 :
或关系,几种选择器样式一致。

2)层次选择器

-- 使用空格间隔选择器

选择器1  选择器2  ... {
css 样式
}

应用 :
逐层递进,选择器逐层嵌套(只要是后代即可)

-- 标记+选择器("+"表示紧连在一起)

标记选择器{
   css 样式
}
应用:
应用了选择器的特定标记

tip:区别

p.mark {...}

.mark p { ... }

 

-- 使用 **>** 连接选择器

 

```css
选择器>选择器{
...
}
使用:
父子关系,选择子代
```

 

​ -- 使用 **+** 连接选择器

 

```css
选择器+选择器{
...
}
使用:
兄弟关系,选择紧挨着的第一个弟弟
```

 

​ -- 使用 **~** 连接选择器

 

```css
选择器~选择器{
...
}
使用:
兄弟关系,选择所有弟弟
``

3)属性选择器[]

【说明】根据html元素的属性或者属性值来进行匹配

[属性] {
  ...
}
应用 :
只要标记含有该属性就应用样式
[属性=值] {
  ...
}
应用 :
含有属性,并且符合相应值
[属性*=值] {
  ...
}
应用 :
标记含有的属性并且值中含有所设置选择器描述的值
[属^=值] {
  ...以谁开头
}
应用 :
标记属性值以选择器描述的值开头
[属性$=值] {
  ...已谁结尾
}
应用 :
标记属性值以选择器描述的值结尾

 

4)伪元素选择器 :?

 

​ 一般搭配标记一起使用

 

​ -- 修饰超链接

 

​ a:link 未访问

 

​ a:hover 鼠标在连接上

 

​ a:active 按下去

 

​ a:visited  访问过的

 

​ -- 鼠标移上状态设置

 

​ ?:hover

 

​ -- 匹配指定元素某一个或者某几个

 

​ :nth-child()

 

​ 如 :tr:nth-child(3) 第3个tr

 

​ tr:nth-child(even|odd) 偶奇位置

 

​ tr:nth-child(an+b) n从0开始

 

​ -- 第一个xxx

 

​ :first-letter 选择第一个字母

 

​ :first-line 第一行

 

​ :first-child 第一个子项

 

​ -- 和表单元素相关

 

​ :checked

 

​ -- :before , :after

 

​ 在元素前或者后插入内容,内容通过css的content内容属性来加载

 

```html
.locBox p:before {
content : 'Before' ;
color : red ;
font-size:xx-large;
}
.locBox p:after {
content : 'After' ;
color : blue ;

```

5. 边距属性

外边距 -- margin , 元素和兄弟元素或者父元素之间的距离

内边距 -- padding,元素的内容和边框之间的距离

margin与padding都可以有四个方向的距离 : top , right , bottom , left

margin-top:100px;
margin-bottom:100px;
margin-right:50px;
margin-left:50px;
------------------------
margin : 100px 50px ; /*100-top,bottom , 50-left,right*/
margin : 1px 2px 3px 4px;
----------------
margin : 50px ; /* 四个方向都是50 */
margin : 0 auto ;  /* 上下是0,左右是(父容器大小-元素大小)/2 */

6. 边框线属性

粗细 width,样式 style,颜色 color

四个方向 : top , right , bottom , left

border : solid red 1px;  /* 四个方向样式 style样式,color颜色,width粗细*/
-------------
border-style:dashed ;
border-width:5px;
border-color:green ;
-----------------
border-left : dotted red 1px;   /* 左边框线 */
dotted - 定义点线边框
dashed - 定义虚线边框
solid - 定义实线边框
double - 定义双边框
groove - 定义 3D 坡口边框。效果取决于 border-color 值
ridge - 定义 3D 脊线边框。效果取决于 border-color 值
inset - 定义 3D inset 边框。效果取决于 border-color 值
outset - 定义 3D outset 边框。效果取决于 border-color 值
none - 定义无边框
hidden - 定义隐藏边框

【CSS3 -- 3个属性】

boder-radius 圆角

7. 盒子模型(理解)

https://www.runoob.com/css/css-boxmodel.html

    CSS盒模型本质上是一个盒子,封装周围的HTML元素,它包括:边距,边框,填充,和实际内容。该四项内容宽度和构成页面上占用空间宽度。
Margin(外边距) - 清除边框外的区域,外边距是透明的。
Border(边框) - 围绕在内边距和内容外的边框。
Padding(内边距) - 清除内容周围的区域,内边距是透明的。
Content(内容) - 盒子的内容,显示文本和图像。
最终元素的总宽度计算公式是这样的:

总元素的宽度=宽度[width]+左填充[padding-left]+右填充[padding-right]+左边框[border-left]+右边框[border-right]+左边距[margin-left]+右边距[margin-right]

元素的总高度最终计算公式是这样的:

总元素的高度=高度height+顶部填充+底部填充+上边框+下边框+上边距+下边距
--- 当空间大小一定时,width计算方式是 :
空间大小 - borderLeft - borderRight - paddingLeft - paddingRight - marginLeft - marginRight
只有 250 像素的空间 
div {
  width: 200px;  <!-- 250-15*2-5*2-10*2 -->
  padding: 15px;
  border: 5px solid gray;
  margin: 10px;
}

8. 定位与浮动

1)标准文档流

https://blog.csdn.net/weixin_43734523/article/details/110878644

标准文档流:指的是元素排版布局过程中,元素会默认从左往右、从上往下的流式排列方式。前面的内容发生变化后,后面的内容位置也会随着发生变化。

三个微观现象
1、空白折叠现象:无论写多少个空格(或者换行),最终显示的都只有一个空格!
2、底边对齐现象:当排列在同一行的元素高度不一致的时候,会出现底边对齐的现象!

同一行内放了四个元素(span、a、img、input),四个元素的 height 不一致,最终以底边对齐的形式展示!

3、自动换行:当一行展示不下的时候,会自动排列到下一行进行展示!
三个元素等级:在标准流中,大部分元素都是区分等级的,习惯将元素划分为以下几种加载级别:
1、块级元素。2、行内元素。3、行内块元素。

1、块级元素
a、可以设置宽高。如果不设置宽高,会被内容自动撑开高度!
b、必须独占一行,不能与其他元素并排显示。
---大部分容器级标签都是块级元素,如:div、h1~h6、p 标签等。
2、行内元素
a、不能正常加载 height、width 属性。
b、无论是否设置 height、width 属性, 高度和宽度都只能被内容自动撑开。
c、可以与其他行内、行内块元素并排显示!
-- 大部分文本标签都是行内元素,比如 span、a、b标签等。
-- 如果希望width与height起到作用,可以使用 display:inline-block
3、行内块元素
a、行内块元素可以设置宽高。
b、行内块元素可以并排一行显示。
c、如果没有设置宽高,则会被内容自动撑开。
d、行内元素可以同时设置宽高,和并排显示,但是还是存在标准文档流的微观性质:如 空白折叠现象(元素之间存在空隙)比如 img、input标签等。
可以通过 display:block / inline / inline-block 更改元素显示模式。

 

2)以下设置会使元素脱离标准的文档流

-- 给元素添加浮动: float -- 绝对定位: position:absolute -- 固定定位: position:fixed

3)浮动 :

float : left|right

清除浮动 clear : left|right|both

tip : 【注】需要浮动的相关元素处理后,一般建议清除浮动(布局),一般借助div应用样式 \ <div style="clear:both"></div>

<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title>Title</title>
   <link rel="stylesheet" href="css/base.css">
   <style type="text/css">
       .float1 p {
           text-indent: 2em;
      }
       .float1 img {
           /*float:left;*/
           width: 50px;
           height: 50px ;
           float : right;
           margin: 5px;
           border : solid #666 4px ;
           padding : 4px;
           border-radius: 5px;
      }
       /*
      .float2 p:first-letter {
          font-size:4em ;
      }*/
       .float2 p:first-letter {
           float : left;
           font-size:4em ;
      }
       .float3 .left , .float3 .right {
           float : right;
           width : 150px;
      }
       .float3 .middle {
           float : right;
           width : 700px;
           background-color: coral;
      }
   </style>
</head>
<body>
<article id="container">
   <section>
       <img src="../assets/imgs/female.jpg" height="80" width="80"/>
       <p>段落元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。</p>
   </section>
   <hr/>
   <section class="float1">
       <h3>
          图文排版
       </h3>
       <img src="../assets/imgs/female.jpg" />
       <p>段落元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。段落元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。段落元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。段落元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。</p>
   </section>
   <hr/>
   <section class="float2">
       <h3>
          段落首字符处理
       </h3>
       <p>段落元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。段落元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。段落元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。段落元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。</p>
   </section>
   <hr />
   <section class="float3">
       <h3>
          排版布局
       </h3>
       <div class="left">left</div>
       <div class="middle">middle</div>
       <div class="right">right</div>
       <div class="clear"></div>
   </section>
</article>
</body>
</html>

4)定位

https://www.cnblogs.com/guolao/p/9048308.html

position、left、top、right,bottom,width、height

【应用】导航子菜单,广告漂浮,导航条固定

position : static   标准文档流,left、top、right,bottom不起作用
position : absolute -- 元素的位置相对于最近的已定位父元素,如果元素没有已定位的父元素,那么它的位置相对于<html>
position : relative  -- 参考元素在父容器的原位置进行偏移
postion : fixed  -- 位置不会随滚动条滚动而改变
------------------
width , height 设置元素内容占用空间大小
left、top、right,bottom 设置元素所在位置
<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title>Title</title>
   <link rel="stylesheet" href="css/base.css">
   <style>
       #container div {
           width: 100px;
           height: 100px;
           border :solid red 1px;
           background-color: cornsilk;
      }
       #container div.relative {
           position: relative;
           left: 20px;
           top:20px ;
      }


       #container .absParent {
           position: relative;
           left: 0px;
           top : 0px;
      }
       #container .absParent .absolute {
           position: absolute;
           top: 0px;
           left: 100px;
      }

       #container .fixed {
           position: fixed;
           bottom : 100px;
           right : 100px;
      }
   </style>
</head>
<body>
<div id="container">
   <div>1</div>
   <div class="relative">2</div>
   <div style="width: 500px; height: 300px;" class="absParent">
       <aside>div中的aside-1,div中的aside-1,div中的aside-1,div中的aside-1</aside>
       <div class="absolute">4</div>
       <aside>div中的aside-2,div中的aside-2div中的aside-2div中的aside-2</aside>
   </div>
   <div class="fixed">fixed</div>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
   <p>加长页面</p>
</div>

</body>
</html>

9. 元素的显示特征 display

display : block|inlie|inlie-block|none

tip : display : none 元素不可见而且不占用页面空间

10. 元素的可见性

1)visibility : hidden|visible

设置元素隐藏,仍然占用空间

2)overflow:visible | hiddel | scroll滚动条

元素设置了height,内容溢出后的处理

<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title>Title</title>
   <link rel="stylesheet" href="css/base.css">
   <style type="text/css">
       .content div {
           width: 100px;
           height: 100px;
           border : solid red 1px;
           background-color: cyan;
           margin: 10px;
      }
       .content .showBox {
          /* display: none;*/
           visibility: hidden;
      }

       .over div {
           width : 100px;
           height : 80px;
           border : solid green 1px ;
           margin-top : 10px;
      }
       .over div:nth-child(1) {
           background-color: darkseagreen;
           overflow: hidden;
      }
       .over div:nth-child(2) {
           background-color: pink;
           overflow: scroll;
      }
   </style>
</head>
<body>
<div id="container">
   <div class="content">
       <div>1</div>
       <div class="showBox">2</div>
       <div>3</div>
   </div>
   <div class="over">
       <div>内容较多内容较多内容较多内容较多内容较多内容较多内容较多</div>
       <div>内容较多内容较多内容较多内容较多内容较多内容较多内容较多</div>
   </div>
</div>
</body>
</html>

 

11. 常用css样式

-文本

            color
font-size
font-family
font-weight
text-align
text-transform:uppercase|lowercase|capitalize 文本的大小写
text-indent: 2em;
text-decoration : none || underline || blink || overline || line-through
white-space: nowrap
css3
text-shadow: 5px 5px 5px #FF0000;
word-wrap:break-word;【允许对长单词进行拆分,并换行到下一行】

- 背景

            background-color
background-image : url()
background-repeat : norepeat|repeat-x|repeat-y|
background-position:center|left-int px , top-int px
css3 : background-size,background-origin,background-clip ,多重背景图
div p {
   background-image: url("../img/taozi.jpg");
   background-repeat: no-repeat;
   background-position: right bottom;
   background-attachment: fixed;
}
        #bgShow {   /* 背景图和背景色的结合 */
          height: 412px;
          background-image: url("imgs/1.jpg");
          background-repeat: no-repeat;
          background-position: left;
         
          border: red solid 1px;
      }

- 边框 border : top right bottom left

    border : width  color style
border-style : none | solid | dashed |dotted|...
border-width
border-color
css3 :
圆角 :
border-radius: 25px;
-moz-border-radius:25px; /* Old Firefox */
使用图片 :
border-image:url(border.png) 30 30 round;
-moz-border-image:url(border.png) 30 30 round; /* 老的 Firefox */
-webkit-border-image:url(border.png) 30 30 round; /* Safari 和 Chrome */
-o-border-image:url(border.png) 30 30 round; /* Opera */
.border2 {
           border: 15px solid yellow;
           border-image: url("img/c.jpg") 30 35 repeat;
           -moz-border-image:url("img/c.jpg") 30 35 round; /* 老的 Firefox */
           -webkit-border-image:url("img/c.jpg") 30 35 round; /* Safari 和 Chrome */
           -o-border-image:url("img/c.jpg") 30 35 round; /* Opera */
      }
/*   https://segmentfault.com/a/1190000010969367 */

- 列表

    list-style-type : none
list-style-image : url()

- 表格边框线

    table  {
       border-collapse:collapse;
  }
   table,th, td {
       border: 1px solid black;
  }

12. CSS3

1)透明度

opacity : 0--1.0

        #container div:nth-child(1) {
           color : red ;
      }
       #container div:nth-child(2) {
           color : red ;
           opacity: 0.5;
      }
阴影 text-shadow

2)使用外部字体文件

-- 使用 @font-face 来定义字体的名称,以及字体文件 url

-- 使用 font-family来设置字体

        /* 定义字体,并命名为 myFont */
       @font-face {
           font-family: myFont;
           src: url("font/msjhn_boot.ttf");
      }
       #container div:nth-child(4) {
           font-family: myFont;
      }

3)2D转换(一般和过渡一起使用)

CSS3 转换可以对元素进行移动、缩放、转动、拉长或拉伸。

transform : rotate()--旋转 , translate() -- 位移, scale()--缩放 ,skew()--拉伸

        transform: rotate(30deg);
       -ms-transform: rotate(30deg); /* IE 9 */
       -webkit-transform: rotate(30deg); /* Safari and Chrome */
       -o-transform: rotate(30deg); /* Opera */
       -moz-transform: rotate(30deg); /* Firefox */
<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title>Title</title>
   <link rel="stylesheet" href="css/base.css">
   <style type="text/css">
       #container div {
           width : 100px;
           height: 100px;
           background-color: papayawhip;
           border : solid red 1px;
      }
       #container div:nth-child(2) {
           transform: translate(100px , -20px);
      }
       #container div:nth-child(3) {
           transform: rotate(45deg);  /* 顺时针45度 */
      }
       #container div:nth-child(4) {
           transform: scale(3 , 0.5);  /* 对角线交点为中心的 */
      }
       #container div:nth-child(5) {
           transform: skew(30deg ,30deg);
      }
       #container div:nth-child(6) {
           transform: translate(100px , -20px) scale(0.5,0.5) rotate(180deg);
      }
   </style>
</head>
<body>
<div id="container">
   <div>普通div</div>
   <div>translate--位移</div>
   <div>rotate--旋转</div>
   <div>scale--缩放</div>
   <div>skew--拉伸</div>
   <div>all</div>
</div>

</body>
</html>

4)过渡

-- 需要一个事件来激发过渡效果演示, 如 :hover

-- 演示后,恢复默认状态

 transition : 演示过渡效果的属性|all    持续时长    过渡效果linear|ease|...    延迟时长 
如:
   transition: all 5s linear 2s;
   /* Firefox 4 */
   -moz-transition:all 5s linear 2s;
   /* Safari and Chrome */
   -webkit-transition:all 5s linear 2s;
   /* Opera */
   -o-transition:all 5s linear 2s;
<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title>Title</title>
   <link rel="stylesheet" href="css/base.css">
   <style type="text/css">
       #container div {
           width : 100px;
           height: 100px;
           background-color: papayawhip;
           border : solid red 1px;
           transition: all 10s;
      }
       #container div:hover {
           color: white;
           font-size: smaller;
           background-color: darkblue;
           transform: translate(100px , -20px) scale(0.5,0.5) rotate(720deg);
      }
   </style>
</head>
<body>
<div id="container">
   <div>鼠标移上来看看</div>
</div>

</body>
</html>

5)动画

【页面加载即播放】

i。使用@Keyframes设置动画规则

ii。使用animation属性应用动画

animation : 名称 持续时长 ;

animation: 名称 持续时长 效果 延迟 次数|infinite 次数不止一次时偶数次的效果normal|alternate ;

animation-iteration-count: value | infinite【无限次】;

animation-direction: normal|reverse|alternate|alternate-reverse|initial|inherit;【多次播放动画时,播放顺序】

/* 定义动画规则 */
@keyframes myfirst{
from {background: red;}
to {background: yellow;}
}

@-moz-keyframes myfirst /* Firefox */{
from {background: red;}
to {background: yellow;}
}

@-webkit-keyframes myfirst /* Safari 和 Chrome */{
from {background: red;}
to {background: yellow;}
}

@-o-keyframes myfirst /* Opera */{
from {background: red;}
to {background: yellow;}
}
/* 应用动画 */
div{
animation: myfirst 5s;
-moz-animation: myfirst 5s; /* Firefox */
-webkit-animation: myfirst 5s; /* Safari 和 Chrome */
-o-animation: myfirst 5s; /* Opera */
}
<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title>Title</title>
   <style>
       /* 定义动画规则 */
       @keyframes myfirst{
           from {background: red;}
           to {background: yellow;}
      }

       @-moz-keyframes myfirst /* Firefox */{
           from {background: red;}
           to {background: yellow;}
      }

       @-webkit-keyframes myfirst /* Safari 和 Chrome */{
           from {background: red;}
           to {background: yellow;}
      }

       @-o-keyframes myfirst /* Opera */{
           from {background: red;}
           to {background: yellow;}
      }
       #container div {
           width: 200px;
           height: 200px;
           background-color: blue;
           border:red solid 1px
      }
       /* 应用动画 */
       .box1{
           animation: myfirst 5s;
           -moz-animation: myfirst 5s; /* Firefox */
           -webkit-animation: myfirst 5s; /* Safari 和 Chrome */
           -o-animation: myfirst 5s; /* Opera */
      }
       /* ************* */
       .box2 {
           width:100px;
           height:100px;
           background:red;
           position:relative;

           animation: myfirst 5s infinite alternate;
           /*
          animation-name: myfirst;
          animation-duration: 5s;
          animation-iteration-count: infinite;
          animation-direction: alternate;
          */
      }
       @keyframes myfirst
      {
           0%   {background:red; left:0px; top:0px;}
           25% {background:yellow; left:200px; top:0px;}
           50% {background:blue; left:200px; top:200px;}
           75% {background:green; left:0px; top:200px;}
           100% {background:red; left:0px; top:0px;}
      }
       @-moz-keyframes myfirst /* Firefox */
      {
           0%   {background:red; left:0px; top:0px;}
           25% {background:yellow; left:200px; top:0px;}
           50% {background:blue; left:200px; top:200px;}
           75% {background:green; left:0px; top:200px;}
           100% {background:red; left:0px; top:0px;}
      }

       @-webkit-keyframes myfirst /* Safari and Chrome */
      {
           0%   {background:red; left:0px; top:0px;}
           25% {background:yellow; left:200px; top:0px;}
           50% {background:blue; left:200px; top:200px;}
           75% {background:green; left:0px; top:200px;}
           100% {background:red; left:0px; top:0px;}
      }

       @-o-keyframes myfirst /* Opera */
      {
           0%   {background:red; left:0px; top:0px;}
           25% {background:yellow; left:200px; top:0px;}
           50% {background:blue; left:200px; top:200px;}
           75% {background:green; left:0px; top:200px;}
           100% {background:red; left:0px; top:0px;}
      }
   </style>
   <link rel="stylesheet" href="css/base.css">
</head>
<body>
<div id="container">
   <div class="box1"></div>
   <div class="box2"></div>
   <br/>  <br/>  <br/>  <br/>  <br/><br/>  <br/>  <br/>  <br/>  <br/><br/>  <br/>  <br/>  <br/>  <br/><br/>  <br/>  <br/>  <br/>  <br/><br/>  <br/>  <br/>  <br/>  <br/><br/>  <br/>  <br/>  <br/>  <br/>
</div>
</body>
</html>

 

1. 基本语法

 

弱数据类型的web编程语言 ;

 

变量、函数名严格区分大小写;

 

允许使用注释 // 与 /* */

 

语句结束使用 ; , 也可以不加

 

console.log(内容) -- 打印信息到控制台【F12】

 

2. 页面中引入JavaScript方式

 

方式一 : 在HTML页面描述Js , <script>可以放在<head>中,也可以在<body>
<script>
// 描述js代码
</script>

 

方式二 :
将js定义为独立的外部文件(*.js)
html页面可以引入该外部文件 <script src="外部js的url"></script>

 

【注】如果js中访问页面元素(标记),一定要标记加载之后才能访问

 

3. 数据类型

 

值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol(ES6)。

 

引用数据类型:对象(Object)、数组(Array)、函数(Function)。

 

tip : 1)字符串可以使用单引号或者双引号引起来;

2)false , 0 , null , undefined 在条件判定时都表示 false,其他表示 true

3)可以为变量赋值 null,表示变量不再使用

4)undefined表示从未声明过变量,直接使用该变量,也即变量不存在

 

4. 变量

 

-- 变量声明使用关键字 var

 

-- 变量可以不声明直接使用

 

-- 变量的数据类型可以改变

 

-- 变量可以在定义时通过赋值来确定当前的数据类型

 

var v1 = 10 ;
var v2 = "hello" ;
var v3 = true ;
var v4 = new Array() ;     // 数组
var v5 = new Object() ;

 

5. 运算符

 

-- 算术运算符

 

        + , - , * , / , % , ++ , --

 

-- 赋值运算符

 

    = ,+= , -= , *= , /= , %=

 

-- 字符串拼接运算符

 

        +

 

-- 比较运算符【关系运算符】

 

    > ,>= , < , <= , == , !=
=== , !==   【严格判定,不仅判定值,还判定数据类型】

<script>
  if("12" == 12) {
      console.log("字符串12 == 数值12")     // 输出
  } else {
      console.log("字符串12 != 数值12")
  }
  if("12" === 12) {
      console.log("字符串12 === 数值12")
  } else {
      console.log("字符串12 !== 数值12") // 输出
  }
</script>

 

        var a = 98 ;
      var b = "98" ;
      console.log(a == b) ; // true
      console.log(a === b) ; // false

 

-- 逻辑运算符

 

    &&  , || , !
&& 与 || 支持短路运算符

 

        var m , n ;
       m = n = 10 ;
       if(m > 0 || n++ > 0) { // 短路
           console.log("执行了if")
      }
       console.log("m = " + m + " , n = " + n) ;   // m = 10 , n = 10
       console.log("-------------") ;
       m = n = 100 ;
       if(m < 0 && ++n > 0) { // 短路
           console.log("执行了if")
      }
       console.log("m = " + m + " , n = " + n) ;   // m = 100 , n = 100
       console.log("-------------") ;
       m = n = 200 ;
       if(m > 0 && ++n > 0) { // 不构成短路条件
           console.log("执行了if")
      }
       console.log("m = " + m + " , n = " + n) ;   // m = 200 , n = 201

 

-- 条件运算符

 

    条件表达式1 ? 表达式2 :表达式3
规则:判定表达式1的真假性,如果为真,返回表达式2的值,否则返回表达式3的值
<==>
if(条件表达式1) {
      表达式2 ;
} else {
      表达式3 ;
}

 

-- 优先级 :

 

赋值运算符级别最低 ;

 

单目运算符级别优于双目运算符,优于多目运算符

 

算术运算符 > 关系运算符 > 逻辑运算符 > 赋值运算符

 

6. 结构语句

 

-- 三种结构

 

顺序结构、选择结构、循环结构

 

-- 选择结构

 

if语句、switch语句

 

-- 循环结构

 

while语句、do...while语句、for语句

 

forEach语句 (和java不同)数组元素下标或者名称

 

7. 函数

 

-- 定义函数使用 function

 

function 函数名([参数列表]) {
   // 函数体
   // return语句
}

// 参数列表是可选项,描述形式为 :变量1 ,变量2 ,...

 

-- 调用函数时,需要为参数传递值

 

<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title>Title</title>
   <style type="text/css">
       #nineDiv {
           width : 600px ;
           background-color: cornsilk;
           border : red solid 1px;
           border-radius: 5px;
           padding : 10px ;
      }
   </style>
</head>
<body>
   <div id="nineDiv"></div>
   <div>
       <button type="button" id="showNineBtn">显示九九乘法表</button>
   </div>

<script>
   if("12" == 12) {
       console.log("字符串12 == 数值12")
  } else {
       console.log("字符串12 != 数值12")
  }
   if("12" === 12) {
       console.log("字符串12 === 数值12")
  } else {
       console.log("字符串12 !== 数值12")
  }

   // 函数定义
   function fun1() {
       var str = '' ;
       for(i = 1 ; i <= 9 ;i++) {
           for(j = 1 ; j<= i ;j++ ) {
               str += i + '*' + j + '=' + i*j + '&nbsp;&nbsp;'
          }
           str += "<br/>"
      }
       console.log(str) ;
       return str ;
  }

   // 函数调用
   fun1() ;

   // 将函数返回字符串显示到页面html元素内部
   // document.getElementById("nineDiv").innerHTML = fun1() ;

   // 为按钮绑定事件,点击按钮时将函数返回字符串显示到页面html元素内部
   document.getElementById("showNineBtn").onclick = function() {
       document.getElementById("nineDiv").innerHTML = fun1() ;
  }
</script>
</body>
</html>

 

8. 获取页面元素

 

获取到的一个页面元素对象
document.getElementById("标记的id值")
document.querySelect("css选择器名称")

 

获取到的页面元素对象数组
document.querySelectAll("css选择器名称")

 

以下为了解 :

 

document.getElementsByTagName("html标记名")

 

document.getElementsByClassName("标记的class值")

 

9. 操纵元素的内容

 

两个属性 :

 

innerHTML  识别HTML标记

 

innerText   不识别

 

【注】

 

表单元素值 :

 

属性 value

 

10. 操纵元素的属性

 

html标记的属性都是js获取到元素对象的属性;

 

而且还可以增加新属性

 

操纵属性还支持 setAttribute()方法

 

11. 操纵元素的css样式

 

12. 元素绑定事件及逻辑处理

 

方式一 :

 

-- 获取到页面元素

 

var xxxTag = ... ;

 

-- 绑定事件

 

        xxxTag.onXXXX = function(){

 

....

 

}

 

或者

 

xxxTag.onXXXX = 函数名();

 

方式二 :

 

。。。

 

onload,onunload  ==> 窗体载入和载出,只能window对象绑定
onclick ==> 点击,大多数html元素都支持
onmousedown , onmouseup , onmouseover , onmouseout , onmousemove ==> 鼠标事件,,大多数html元素都支持
onfocus,onblur ==> 获取焦点/失去焦点 ,表单元素支持
onchange ==> 一般 <select> 绑定
onselect ==> 文本被选定事件
onkeydown,onkeyup,onkeyress ==> 键盘事件,,大多数html元素都支持
onsubmit onreset ==> form 支持
   在onsubmit的回调函数中,如果return false;则表单不提交

 

13. 内置对象

1)Array对象

https://www.runoob.com/jsref/jsref-obj-array.html

数组元素下标从0开始,到 length-1结束

创建数组 :
数组名 = [值1 , 值1 ,... ] ;
数组名 = new Array() ; // 空数组
数组名 = new Array(值1 , 值1 ,... ) ;
数组名 = new Array(正整数) ; // 初始化一个初定长度的数组
-- 属性
length
-- 主要方法
合并数组 - concat()
用数组的元素组成字符串 - join()   默认使用,间隔
删除数组的最后一个元素 - pop()
数组的末尾添加新的元素 - push()
将一个数组中的元素的顺序反转排序 - reverse()
删除数组的第一个元素 - shift()
从一个数组中选择元素 - slice() 返回值是一个数组
在数组的指定位置添加或删除若干元素 - splice()
在数组的开头添加新元素 - unshift()

2)String对象

-- 字符串可以使用双引号或者单引号引起来。

-- String对象可以通过"[]"运算符来获取其中一个字符

-- 属性
length
-- 主要方法
方法 描述
charAt() 返回在指定位置的字符。
concat() 连接两个或更多字符串,并返回新的字符串。
indexOf() 返回某个指定的字符串值在字符串中首次出现的位置,如果该字符从来没出现过,返回-1
includes() 查找字符串中是否包含指定的子字符串。
lastIndexOf() 从后向前搜索字符串,并从起始位置(0)开始计算返回字符串最后出现的位置。
match() 查找找到一个或多个正则表达式的匹配。
replace() 在字符串中查找匹配的子串, 并替换与正则表达式匹配的子串。
search() 查找与正则表达式相匹配的值。
slice() 提取字符串的片断,并在新的字符串中返回被提取的部分。
split() 把字符串分割为字符串数组。
startsWith() 查看字符串是否以指定的子字符串开头。
substr() 从起始索引号提取字符串中指定数目的字符。
substring() 提取字符串中两个指定的索引号之间的字符。
toLowerCase() 把字符串转换为小写。
toUpperCase() 把字符串转换为大写。
trim() 去除字符串两边的空白

3)RegExp对象

var patt=new RegExp(pattern,modifiers);
或更简单的方法
var patt=/pattern/modifiers;
主要方法,和其他对象的相关方法
test() 返回boolean值,判断参数字符串是否符合对象正则表达式规则

String中支持使用正则表达式做参数的方法
replace()
split()
search()
match()

4)Date 对象

-- 月份是从0--11

var d = new Date();                 // 当前系统日期时间
var d = new Date(milliseconds); // 利用Unix时间戳构造
var d = new Date(dateString); // 日期格式字符串
var d = new Date(year, month, day, hours, minutes, seconds, milliseconds);

-- 两大方法组

getXxx()

setXxx()

5) Math对象

Math对象的属性和方法是由 Math直接引用

-- 属性
PI
-- 主要方法
方法 描述
abs(x) 返回 x 的绝对值。
acos(x) 返回 x 的反余弦值。
asin(x) 返回 x 的反正弦值。
atan(x) 以介于 -PI/2 与 PI/2 弧度之间的数值来返回 x 的反正切值。
atan2(y,x) 返回从 x 轴到点 (x,y) 的角度(介于 -PI/2 与 PI/2 弧度之间)。
ceil(x) 对数进行上舍入。
cos(x) 返回数的余弦。
exp(x) 返回 Ex 的指数。
floor(x) 对 x 进行下舍入。
log(x) 返回数的自然对数(底为e)。
max(x,y,z,...,n) 返回 x,y,z,...,n 中的最高值。
min(x,y,z,...,n) 返回 x,y,z,...,n中的最低值。
pow(x,y) 返回 x 的 y 次幂。
random() 返回 0 ~ 1 之间的随机数。
round(x) 四舍五入。
sin(x) 返回数的正弦。
sqrt(x) 返回数的平方根。
tan(x) 返回角的正切。

 

 

 

posted @ 2021-03-29 17:58  YangYuJia  阅读(127)  评论(0)    收藏  举报