js基础
总结
打断循环:
Break:打断就近循环体的整个循环【没有下次循环】;
Continue:打断就近循环体的本次循环,之后会进行就近循环体的下次循环。
打断指定循环(如下):
var i,j;
outer:for(i=0;i<10;i++){
console.info("====");
console.info("i="+i);
inner:for(j=0;j<10;j++){
if(j==3){
continue inner;
//continue outer;
//break inner;
}
}
}
数组:
1、 索引值从0开始;
2、 最后一个索引表示方法arr.length-1;
3、 Var arr=[1,2,3]; var arr=new Array(1,2,3);
4、 数组元素可以使任意类型
数组的遍历:
var arr=[[1,2],[3,4]],
len=arr.length,
i,
j;
for(i=0;i<len;i++){
for(j=0,len=arr[i].length;j<len;++j){
console.log(arr[i][j]);
}
len=arr.length;
}
冒泡排序
var arr = [1,8,9,4,2,3,5],
temp,
i,
j,
len=arr.length;
for(i=0;i<len-1;i++){
for(j=0;j<len-1;j++){
if(arr[j]>arr[j+1]){
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
函数:
1、命名函数(可提前调用)
function funcName(形参){
执行语句
}
var funcName(实参);
2、匿名函数
Var funcName = function (形参) {
执行语句
}
var funcName(实参);
上面的funcName是function函数的地址;
注意:
var num = function(){};函数定义
var num = fun1;对函数地址的赋值
var num = fun1(2);将函数的运行返回的结果赋值给num
容易出错的案例
var arr = [1,2,3];
function func1(a){//a是形参
a[0]=0;//将地址里面的第零个I偏移量所对应的值变为0
console.log(a);//输出[0,2,3]
}
func(arr);//arr作为实参,并将其代表的地址赋值给a(也就是arr和a此时指向同一个对象)
console.log(arr);//输出[0,2,3]
变量:
全局变量:任何地方都可以用;
局部变量:函数体内才可以用,(js会优先选择函数体内的变量)
Return:
1、函数的结束语句
2、函数结束时会返回一个值
eg:
function func1(a){
if (a===1){
console.log(1);
return 1;//满足条件时在控制台显示1 会返回一个1
}
if (a===2){
console.log(2);//满足条件时在控制台显示2 返回一个undefined
}
}
BOM对象
window对象
Document frames history location navigator screen
anchors images links location forms
定时器对象
setTimeout在指定的时间之后执行函数
三种书写方式:
setTimeut(函数名,时间);
setTimeout(”直接写js代码“,时间);
setTimeout(function(){},时间)
清除定时器:clearTimeout(clear)
var clear = setTimeut(函数名,时间);
var clear = setTimeut(函数名,时间);
setInterval()间隔执行 在指定的时间内重复执行
书写方式与setTimeout相同
清除间隔执行clearInterval(间隔执行名字);
弹出对话框
alert、confirm、promp都会阻碍后面的程序运行【在关掉显示的对话框之前,后面的代码不会执行】
confirm的返回值是布尔类型,prompt的返回值是string类型
打开窗口
var newWindow = open("http://www.baidu.com","_blank","width = 200","left = 300","resizable = yes","toolbar = yes"。。。。)
[窗口的地址,在新窗口打开,窗口宽度,左坐标,可以拖拽扩大缩小,显示工具栏。。。。]
关闭窗口
newWindow.close();
访问指定url
location.href=();
window.history对象
history.back();返回上一页;
history.foward();转到下一页【之前使用过back或go才有效】
history.go(num)前进后退多少页(负数后退)
DOM 文档对象模型
js通过BOM或DOM来操作html,css,文本
标签,注释,文本,属性都是节点
节点的属性和方法
nodeName,nodeType,nodeValue,ownerDocument,firstChild,lastChild,childNodes,attributes,previousSibling,nextSibling、hasChildNodes()
appendChild(),removeChild(),replaceChild(new,old),insertBefore(new,ref),parentNode
节点类型常量和值
元素节点1,属性节点2,文本节点3
HTML中的回车换行会被解析成#text
直接获取节点的方法
document.getElementById(); id名
document.getElementsByTagName(); 标签名
document.getElementsByClassName(); 类名
document.getElementsByName(); name
创建节点
var pEle = document.createElement("元素");
createTextNode("文本");
var text = document.createTextNode("文本");
pEle.appendChild(text)
创建节点之后一定要跟DOM树关联起来document.body.appendChild(pEle);