1、变量作用域:如果初始化变量时没有使用var声明,该变量会自动被添加到全局环境。
function add(num1,num2){
sum = num1 + num2;
return sum;
}
var result = add(10,20);//30
alert(sum);//30
2、引用类型-Object类型
创建对象并给属性赋值
方法1:
var person = new Object();
person.name="xiao ming";
person.age=29;
方法2:对象字面量
var person = {
name : "xiaoming",
age : 29
};
或者:
var person = {
"name" : "xiaoming",
"age" : 29,
5 : true
};
var person = {};//表示创建了一个空对象 与new Object()相同3、访问对象属性:
一般用点表示法
alert(person.name);
也可以用方括号表示法,优点是可以通过变量来访问属性。
alert(person["name"]);
person["first name"] = "Li";//其中包含空格,不能用点表示法
4、Array类型
创建数组的基本方式有两种。
第一种:使用Array构造函数
var colors = new Array();
var colors = new Array(20);
var colors = new Array("red","blue","green");
也可省略new操作符
var colors = Array(3);//创建1个长度为3的数组
var names = Array("Greg");//创建一个包含字符串"Greg"的数组
第二种:使用数组字面量表示法。
var colors = ["red","blue","green"];//创建1个包含3个字符串的数组
var names = [];//创建1个空数组
数组的length属性:可从数组末尾移除项或向数组中添加新项。
var colors = ["red","blue","green"];
colors.length=2;//移除操作
alert(color[2]);//undefined
colors[colors.length] = "black";//添加新项
colors[colors.length] = "brown";//添加新项
5、检测数组
Array.isArray(value)
6、数组的栈方法(先进后出) push()和pop()用法
var colors = new Array();
var count = colors.pust("red","greed");//添加2项
alert(count);//2
count = colors.push("black");
alert(count);//3
var item = colors.pop();//返回数组最后一项,并将数组长度减1
alert(item);//black
alert(colors.length);//2
7、数组队列方法(先入先出)push()和shift()用法
var colors = new Array();
var count = colors.push("red","green");
alert(count);//2
count = colors.push("black");
alert(count);
var item = colors.shift();//截取数组第1项并将数组长度减1
alert(item);//"red"
alert(colors.length);//2
unshift()和pop()用法
unshift:在数组前端添加新项
var colors = new Array();
var count = colors.unshift("red","green");//在前面添加2项
alert(count);//2
count = colors.unshift("black");
alert(count);//3
var item = colors.pop();
alert(item);//green
alert(colors.length);//2