JS基础语法
1.数组(数组是按次序排列的一组数据,每个值的位置都有编号(从0开始),整个数组用方括号表示)
(1)数组定义
①隐式定义
var 数组名=[ ];
var 数组名=[值1,值2,值3...];
②直接实例化
var 数组名=new Array(值1,值2,值3);
③定义数组并设置长度
var 数组名=new Array(size);
(2)数组的操作
①数组的下标从0开始,不会出现下标越界
②获取数组指定下标的值:数组名[下标]; (如果下标不存在,则underfinded)
③设置数组指定下标的值:数组名[下标]=值; (如果下标不存在,则自动扩容)
④获取数组的长度:数组名.length;
⑤设置数组的长度:数组名.length=值;
⑥如果设置非整数型的下标,则会成为数组的属性,不计入数组长度
⑦设置属性:数组名.属性名=值;
数组名["属性名"]=值;
⑧获取属性:数组名.属性名;
数组名["属性名"];
(3)数组的遍历
①for循环遍历:for(var index=0;index<数组长度;index++){
}
相当于Java中:for(int index=0;index<数组长度;index++){
}
②for...in循环:for(var 下表名 in 数组){
}
③forEach循环:数组.forEach(function(element,index){
});
注:element:元素;index:下标
④特别的:for --》 不遍历属性
foreach --》 不遍历属性和索引中的underfined
for in --》不遍历索引中的underfined
(4)数组提供的操作方法
push 添加元素到最后
unshift 添加元素到最前
pop 删除最后一项
shift 删除第一项
reverse 数组翻转
join 数组转成字符串
index0f 数组元素索引
slice 截取(切片)数组,原数组不发生变化
splice 剪接数组,原数组变化,可以实现前后删除效果
concat 数组合并
2.函数
(1)函数的定义
①函数声明语句:
function 函数名([参数列表]){
}
②函数定义表达式:
var 变量名/函数名=function([参数列表]){
}
③Function构造函数(了解):
var 函数名=new Function([参数列表],函数体);
(2)函数的参数(定义函数时设置形参,调用函数时传递实参)
①实参可以省略,则形参为undefined
②如果形参名相同,则以最后一个参数为准
③可以设置参数的默认值
④参数为值传递,传递副本;参数是引用传递,则传递的是地址,操作的是同一个对象
(3)函数的调用
①常用调用模式:函数名([参数列表]);
②函数调用模式(函数有返回值):var 变量名=函数名([参数列表]);
③方法调用模式:对象.函数名([参数列表]);
(4)函数的返回值
①在没有返回值的方法中,用来结束方法。(如果方法中没有返回值,使用return,返回的是undefined)
②有返回值的方法中,一个是用来结束方法,一个是将值带给调用者
(5)函数的作用域(在JS中,只有在函数中才作用域 )
①在函数中,存在局部变量和全局变量
②在函数中,如果声明变量时未使用var修饰符,则该变量时全局变量