JavaScript
(一般来说开头是get的就是获取,set的是设置,remove的是删除。insert的是新增,delect的是删除。大部分代码意思与英文意思相关联。)
变量、表达式、操作符:
① var 变量 = 5;var 声明变量的前缀。
② 变量 = 变量 + 4; 表达式,‘=’赋值。右边赋值给左边。
③ ‘=’赋值;‘==’等于;‘+’算术加法,字符拼接; ‘+、-、*、/’加减乘除;‘%’取余数;‘<、>、>=、<=’大于、小于、大于等于、小于等于;‘++’自加1;‘–’自减1;‘&&、||、!’或且非;
④ 操作符优先级:算术操作符 → 比较操作符 → 逻辑操作符 → "="赋值符号
函数:
① Function (){} 定义函数;
function 函数名(参数选填){函数体}
② 调用规则:
(1)直接用函数名调用。
(2)可以再另一个函数中用函数名调用该函数。
(3)事件调用。
③ 函数的返回值:函数运行后得到返回值 ,函数中return后面的值就是返回值。
function aaa() { //用关键词function创建函数aaa,
my = 1 + 1; //()内可申明参数.
return my; //返回值,将函数内的值返回出函数,可在外部调用。
}
aaa(); //直接在外部写函数名调用函数,()内可传递参数进函数。
//也可以在html中调用,在标签中添加添加事件比如"aaa()".
// 注意:函数中参数和返回值不只是数字,还可以是字符串等其它类型
提示框类型:
① alert(); 警告框,运行后自动弹出。
② document.write(); 运行后在html中显示。会覆盖文档本身内容。
③ console.log(); 运行后检查页面console上显示。
④ prompt(); 互动方法框,运行后自动弹出。返回文本框内容。
⑤ confirm(); 消息对话框(阻断函数运行等待用户操作 ),确定返回true,取消返回null。
流程控制语句:
① if else 条件语句; if(条件1){条件1达成执行} else{否者执行}
② for循环语句; for(1循环初始值;2循环条件;3循环迭代){循环体}
③ switch() case default 条件语句; switch(条件1){case 条件1:条件1达成执行break结束;case 条件2:条件2达成执行break结束;default:都不达成时执行;}
④ while() 循环语句; while(循环条件){循环体}
⑤ do while() 循环语句; do{循环体}while(循环条件)
⑥ break 退出循环;
⑦ continue 跳出循环;
总结:for与while的不同。for可以直接控制循环次数。
while根据条件来控制循环for 和while 都是先判断条件,再执行方法体;do while 无论条件是否成立都被执行一次,先执行代码,后判断条件
扩展,用不同的代码可以达到相同的效果;
数组对象:
① var 数组 = new Array(5); 定义一维数组。5为数组长度。即使长度明确也能超出该长度。var 数组 = new Array(66,23,32,64,32);创建数组的同时赋值等同于Var 数组 = (66,23,32,64,32);
②
(1)二维数组利用for循环声明。
(2)var 数组 =[[2,4,5][3,5,6]];直接赋值的二维数组。
其中一个整体[4,5,6]其实就是代表my [ I ] [ j]中的i,一共有两个,说明i=0,1;
一个整体中的个数有3个数字就是代表my [ I ] [ j]中的j=0,1,2; 显而易见:
2 4 5 my [0] [0] my[0] [1] my [0] [2]
3 5 6 my [1] [0] my[1] [1] my [1] [2]
这个简式子代表my[0][0]=2;my[0][1]=4;my[0][2]=5;my[1][0]=3;my[1][1]=5;my [1] [2]=6;
③ 数组属性:
(1)length;长度。
(2)concat;连接数组,不改变数组返回一个新的数组。
(3)join;用特殊符号链接数组,返回一个字符串。
(4)sort;数组排序。若不给排序函数则默认从字面上排序。a~z 0~9。若给定排序函数a-b是升序,b-a是降序。
排序函数:
(5)splice(); 删除数组,长度改变,索引改变,这个方法第一个参数表示从哪里开始清,第二个参数是边上清理的长度。
(6)deldte; 删除数组,长度不改变,索引不改变。其实只是替换。把其替换成undefined(空的不纯在的 ,也就是null)而已。
日期对象:
① 时间对象,用国际方式显示当前电脑时间。
② 自定义时间:
③ 时间属性:
④ 返回星期方法,利用数组替换。
⑤ 加深时间,直接利用拼接符+
⑥ 获取当前时间格式:yyyy-MM-dd HH:MM:SS
字符串对象:
① 声明字符串。每一个空格都算一个字符。
② 字符串属性:
(1)length;长度。
(2)charAt(); 获取某个位置的字符。给定的参数是索引。
(3)IndexOf(); 获取某个字符的第一个位置。两个参数。第一个参数是需要获取的字符(区分大小写),第二个参数是从那个位置开始查找。是索引。本函数返回值也是索引。
(4)substring(); 提取两个索引之间的字符串。两个参数都是字符的索引,可以互换。不给参数则是提取整个字符串。参数不大于字符索引。从小的参数索引开始一直到大的参数减1,这些全部提取。
(5)substr(); 提取指定数目的字符串,第一个参数是索引若为负则反向数倒数第一个是 1。若负值大于字符串长度则默认从字符串第一个开始。第二个参数是需要获取的个数(选填)。若不填默认到字符串结束。
(6)split(); 分割字符串。返回数组。第一个参数是切割对象。第二个参数选填,若不填默认分割至字符串结束。返回的数组不会大于第二个参数。
Math对象:(数学对象,实现数学运算)
Window对象:
① Open(); 打开页面。
② Clos();关闭页面。
定时器:
① setInterval(); 每隔指定时间运行一次代码。第一个参数是需要运行的代码,第二个参数是间隔时间。
② setTimeout(); 指定延迟时间后来执行代码。第一个参数是需要运行的代码,第二个参数是间隔时间。
③ clearInterval();clearTimeout();清除定时器。
History对象:
① back();加载上一个url等同于go(-1);
② forward(); 加载下一个url 等同于go(1);
③ go(); 加载具体某个url。
④ length;浏览器历史列表中url的个数。注意: 主页面跳转二级页面长度为2,然后二级页面跳转三级页面长度为3,若回到主页面在跳转另一个二级页面长度任然为2.
Location对象:
① host; 返回主机名和当前url端口号。
② href; 返回整个url。
DOM对象 控制HTML元素:
① 获取元素, getElementByID(); getElementsByName();
getElementsByTagName();分别通过不同的属性来获取元素。举例:
② getAttribute();通过元素节点的属性名称来获取属性值。
③ setAttribute();增加一个指定名称和值的新属性,或者把一个现有的属性设定为指定的值。第一个参数要设置的属性名,第二个参数要设置的属性值。
④ 节点属性:nodeName;节点名称 nodeValue;节点的值nodeType;节点的类型
(1)节点名称:
-
元素节点的 nodeName 与标签名相同
-
属性节点的 nodeName 是属性的名称
-
文本节点的 nodeName 永远是 #text
-
文档节点的 nodeName 永远是 #document
(2)节点的值:
-
元素节点的 nodeValue 是 undefined 或 null
-
文本节点的 nodeValue 是文本自身
-
属性节点的 nodeValue 是属性的值
(3)节点类型:
元素 1
属性 2
文本 3
注释 8
文档 9
hildNodes();获取某个子节点。参数是索引。fristChild获取第一个子节点。lastChild;获取最后一个。
标签就是元素节点,标签中的属性就是属性节点,标签中的文本就是文本节点。
⑤ createElement(); 创建元素节点。
appendChild();在指定节点的最后一个子节点列表之后添加一个新的子节点一个参数需要添加的子节点。
insertBefore();方法可在已有的子节点前插入一个新的子节点,两个参数第一个是需要添加的子节点,第二个是指定的某个子节点。
removeChild();方法从子节点列表中删除某个节点。参数为指定需删除的某个节点。
replaceChild();第一个参数用于替换的对象。第二个参数被替换的对象。也就是新的,跟老的。
-宋心成