javascript1.css有三种样式书写
1>每个html标签中有style属性
2>内部样式 在head标签中书写style标签,书写css代码
3>外部样式
①在css文件下书写好携带.css的文件
②将该.css文件导入html页面中
2.css内部样式选择器
1>标签选择器
2>类选择器
3>id选择器 前三个的优先级 id>类>标签
4>并集选择器
5>子元素选择器
6>通配选择器 *
7>伪类选择器: 描述一个元素的经历状态
①link 鼠标未触碰的状态
②hover 鼠标悬浮或者经过的状态
③active 鼠标点击但未松开的状态
④visited 鼠标点击并且松开的状态
注: ④必须在②③之前
3.文本样式
1>color 三种方式(单词,十六进制,rgb)
2>text-align 文本水平对齐方式
3>text-decoration 设置文本修饰
none(去掉划线) / underline(下划线) / overline(上划线) / line-through(中划线)
4>text-transform 文本中的大小写字母
capitalize(首字母大写) / lowercase(全部小写) / uppercase(全部大写)
5>text-index 文本第一行缩进
6>text-shadow: _px _px ; 文本阴影(水平阴影 垂直阴影)
7>letter-spacing 字符间距
8>line-height 行之间的间距
4.字体样式
1>font-family 类型
2>font-size 大小
3>font-style:italic 斜体
5.列表样式
1>list-style-type 列表前指定的标记类型
2>list-style-image:url(图片地址); 指定标记为该图片
6.表格样式
1>border:边框大小 边框样式 边框颜色
2>width height
3>border-collapse:collapse; 单元格和边框合
7.背景样式
1>background-color 颜色
2>background-image 背景图片
3>background-repeat 背景图片如何重复
no-repeta(不重复) / repeat-x(x轴重复) / repeat-y(y轴重复)
4>background-position 设置图片起始位置
5>background-fixed 这是图片固定,不随滚动条移动
8.浮动属性
float left(左浮动) / right(右浮动) / both(不浮动)
将浮动框向左(右)浮动,一旦移动,就脱落当前"文档流",表现为这个 div 不存在,其他框会发生位置变化
9.盒子属性
一般使用div + css 进行页面布局,每个部分都可以看成一个div盒子
margin(外边距,默认0) / border(边框) / padding(内边距,默认0)
10.定位属性 position
1>relative 相对定位(针对该元素原来位置定位)
2>absolute 绝对定位(针对该元素的父元素位置定位)
3>fixed 固定定位(始终固定位置,不随滚动条移动)
mysqljs是弱类型语言,语法结构非常不严谨
1.使用方式
1>内部方式 head标签中指定script标签书写js代码
2>外部方式 js文件中书写好携带.js的代码文件,在html中导入该文件
2.常用的输出函数
1>document.write() 浏览器直接输出
2>console.log() 控制台输出
3>window.alert() d框显示,window可以省略
3.定义变量
1>使用var定义
2>一个变量可以重复定义,后值会覆盖掉前值
3>var可以定义任何数据类型
创建对象: var 对象名 = new js内置对象();
4.运算符
1>算术运算符 +,-,*,/,%
2>比较运算符 <,<=,>,>=,!=,==
3>逻辑运算符 &,|,! (与,或,非) &&,||
4>三目运算符 (表达式)?true结果:false结果
5.流程控制语句
1>顺序结构
2>选择结构
①if语句 ②switch语句
注:switch语句结束条件:遇见break结束或者程序默认执行末尾
3>循环结构
①for ②while ③do-while
注:do-while,即使条件不成立,循环体至少执行一次
6.内置对象 Date(表示当前日期对象)
创建: var xx = new Date() ;
1>xx.getFullYear() 年 (getYear获取的是当前年份距1900之间的差距)
2>xx.getMonth()+1 月 (获取的是整数0~11,所有+1)
3>xx.getDate() 日
4>xx.getHours() 时
5>xx.getMinutes() 分
6>xx.getSeconds() 秒
7.内置对象 String
创建: var xx = new String() ;
1>xx.charAt(索引) 获取索引处的字符
2>xx.concat() 拼接字符串
3>xx.fontcolor() 给字符串标记颜色
4>xx.indexOf() 获取当前字符串在原字符串xx中第一次出现时的索引
8.定义函数
1>function 函数名(形参){ xxxx,直接输出 } ;
单独调用,直接输出
2>function 函数名(形参){ xxxx return 结果} ;
赋值调用
var 变量 = 函数名(实参) ; 注:形参中不能带var,直接写参数名称
9.内置对象 Array
js中数组对象不存在角标越界,元素可以不断扩容
1>var xx = new Array() ; 不指定长度
2>var xx = new Array(size) ; 指定数组长度
3>var xx = new Array([元素1,元素2,...]) ; 简化: var xx = [元素1,元素2,...] ;
注:不管js还是java,数组都有一个length属性,获取数组长度
10.自定义对象 和定义函数相同,形参不能带var
1>定义:
function 对象名(属性1,属性2,...){
this.xx = 属性1 ....
this.方法名 = function(){}
} ;
创建: var 对象名 = new 对象(实参1,实参2,...) ;
2>定义:
function 对象名(){}
创建: var 对象名 = new 对象() ;
追加属性: 对象名.变量 = xx ;
追加方法: 对象名.变量 = function(xx){} ;
3>利用js内置对象 Object
创建: var 对象名 = new Object() ;
追加属性: 对象名.变量 = xx ;
追加方法: 对象名.变量 = function(xx){} ;
4>json数据格式(字面量值的方式) 解析速度非常快
创建: var 对象名 = {"key1":value1,"key2":value2,...}
注:其中的键值对之间是用 "," 隔开
11.补充
1>innerHTML 和 innerText
任何标签中都有这两个属性,表示设置标签的文本内容
2>定时器
①window.setInterval("xx",毫秒值) 每过这个毫秒值,执行xx
②window.setTimeout("xx",毫秒值) 经过这个毫秒值,执行xx
3>常用的dom *** 作
①document.getElementById("id属性值")
②document.getElementsByClassName("同名的class属性值")
③document.getElementsByName("同名的name属性值")
④document.getElementsByTaName("同名的标签名称")
注:这些是获取标签,可以将其赋值给变量xx,那么xx.value获取标签上的文本内容
4>常用事件
①点击 click(单击) / dblclick(双击)
②焦点 focus(获取焦点) / blur (失去焦点)
③选项卡变化事件,一般用在select下拉菜单中 change
数据库: 存储数据的仓库
1.存储数据的方式
1>变量存储 临时变量
2>数组存储 长度固定
3>集合存储 需要不断创建集合对象,对内存不友好
4>IO流存储 读写过程耗时
5>数据库 永久性/效率高/里面涉及数据库锁的概念,数据安全
2.库的 *** 作
数据库本身在磁盘上进行存储,其本质是一个文件夹(目录)
1>show databases ; 查看所有库
2>create database xx ; 创建一个xx库
create database if exists xx ; 如果不存在xx,创建它
3>show create database xx ; 查询创建的数据库默认字符集
4>alter database xx default character set gbk/utf8 ;
修改数据库的字符集
5>drop database xx ; 删除xx库
drop database if exists xx ; 如果存在xx库,删除它
3.表的 *** 作
常用数据类型 (int,varchar,datetime,tempstamp,double)
整数,字符串,日期时间,时间戳,小数
use 库名 ; 创建表之前要指定库名
1>create table xx(
字段名1 字段类型1,字段名2 字段类型2,...
) ;
2>show tables ; 查询库中所有表
3>desc xx ; 查询xx表的结构
4>alter table xx change 原字段名 新字段名 字段类型 ; 修改xx表中某个字段名
5>alter table xx modify 字段名 新字段类型 ; 修改xx表中某个字段类型
6>alter table xx add 字段名 字段类型 ; 给xx表添加字段名+类型
7>alter table xx drop 字段名 ; 删除xx表中某个字段
8>alter table 新xx like 原xx ; 将xx表复制给新xx表
9>alter table xx rename to 新xx ; 将xx表名修改为新xx
10>drop table xx ; 删除xx表
drop table if exists xx ; 如果存在xx表,删除它
4.数据库的 *** 作语句
1>插入数据
①insert into xx values(值1,值2,...) ;
②insert into xx valuse(值1,值2,...),(值1,值2,..)... ;
③insert into xx (字段1,字段2,...) valuse(值1,值2,...) ;
未插入部分字段的值为null
2>修改数据
①update xx set 字段名 = 值 where 字段名 = xx ;
②update xx set 字段名1 = 值1,字段名2 = 值2... where 字段名 = xx ;
③update xx set 字段名 = 值 ; 批量修改,一般不用
3>删除数据
①delete from xx where 字段名 = 值 ; 删除指定记录
②delete from xx ;
truncate table xx ; 删除全表记录
不同点:第一种只删数据,不删表,不影响自增长约束id,下次增长从之前基础上自增,第二种删除表,建立新表,会影响自增长约束的id,下次增长从1重新开始自增
4>查询数据
select * from xx ; 查询全表数据,一般自用
①select 字段1,字段2,... from xx ;
select s.字段1 "别名1",s.字段2 "别名2",...from xx s ;
全表查询,可使用as给字段和表名起别名,其中as可以省略
②select s.字段 "别名" from xx s ;
查询指定字段
③select * from xx where 字段名 =(<,>)yy ;
查询某字段的值是否为(小于,大于)yy的数据所有信息
注:多个条件可用逻辑符号逻辑或者 and 和 or 逻辑
如果某个字段为null,使用where 字段名 id null
④模糊查询where like "%x%" "_" "%_x%"
字段中有x字符 字段中是一个字符 字段中第二个字符是x
⑤聚合函数select 聚合函数(字段名) from xx ;
其中,聚合函数: count sum avg max min
注:带条件查询可以和聚合函数查询一起使用
⑥排序查询 order by
asc:升序(默认) desc:降序
⑦分组查询 groud by
select 字段列表 from xx group by 分组字段 ;
注:where要在groud by之前使用,groud by 后不能接聚合函数,只能接筛选查询的having,筛选查询相当于额外条件,可接聚合函数
⑧分页查询 limit 起始行数(当前页码-1)*每页显示条数
select 字段列表 from xx limit 起始行数,每页显示条数;
5.数据库的备份和还原
1>命令行方式
备份:不用登录mysql,在dos控制台
mysqldump -uroot -p密码 库名 ->磁盘某个文件夹备份为xx.sql文件
还原:登录mysql,创建新库,use 库名
source 本地磁盘上保存的xx.sql文件路径
2>图形界面化 sqlYog工具
备份:选中库,右键,备份(backup/export 导出)->->选中本地磁盘路径,xx.sql
还原:建库,选中,右键->import(导入)->选第二个执行本地sql脚本即可
6.数据库约束 默认约束default
某个字段没有插入值,值就是默认约束的值
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)