Javascript 数组
通过 数组
,我们可以将多个数据存储于同一个变量中。
通过左括号[
开始定义一个数组,以右括号]
结束定义,并把每个数据条目之间用逗号隔开。
也可以在数组中包含其他数组,即为多维数组
。
使用索引查找数组中的数据
我们可以像操作字符串一样通过数组索引[index]
来访问数组中的数据。
数组索引的使用与字符串索引一样,不同的是,通过字符串的索引得到的是一个字符,通过数组索引得到的是一个数据条目。与字符串类似,数组也是 基于零
的索引,因此数组的第一个元素的索引是 0
。
使用索引修改数组中的数据
与字符串的数据不可变不同,数组的数据是可变的,并且可以自由地改变。
使用索引操作多维数组
可以把 多维
数组理解成是一个 数组中的数组。当使用[]
去访问数组的时候,第一个[index]
访问的是该数组中的第N个子数组,第二个[index]
访问的是第N个子数组的第N个元素。
push()函数追加数组数据
将数据追加到一个数组末尾的最简单的方法是通过 push()
函数。
.push()
允许有一个或多个参数,并把它“push”到数组的末尾。
pop()函数弹出数组最后数据
改变数组中数据的另一种方法是用 .pop()
函数。
.pop()
函数用来“抛出”一个数组末尾的值。我们可以把这个“抛出”的值赋给一个变量存储起来。
数组中任何类型的数据条目(数值,字符串,甚至是数组)可以被“抛出来” 。
shift()函数移出数组第一个数据
.shift()
就是专门用来移除的是第一个元素。
unshift()函数移入数据到数组第一位
.unshift()
函数用起来就像 .push()
函数一样, 但不是在数组的末尾添加元素,而是在数组的头部添加元素。
//数组示例
var myArray = ["aaa",132];
//多维数组示例
var myArray = [["the universe", 42], ["everything", 101010]];
//使用索引查找数组中的数据
var myArray = [1,2,3];
var myData = myArray[0];
//使用索引修改数组中的数据
var ourArray = [1,2,3];
ourArray[1] = 3; // ourArray now equals [1,3,3].
//使用索引操作多维数组
var myArray = [[1,2,3], [4,5,6], [7,8,9],[[10,11,12], 13, 14]];
var myData = myArray[2][1];
//push()函数追加数组数据
var myArray = [["John", 23], ["cat", 2]];
myArray.push(["dog", 3]);
//pop()函数弹出数组最后数据
var myArray = [["John", 23], ["cat", 2]];
var removedFromMyArray;
removedFromMyArray = myArray.pop();
//shift()函数移出数组第一个数据
var myArray = [["John", 23], ["dog", 3]];
var removedFromMyArray;
removedFromMyArray = myArray.shift();
//unshift()函数移入数据到数组第一位
var myArray = [["John", 23], ["dog", 3]];
myArray.shift();
myArray.unshift(["Paul",35]);//事实上成了替换
JavaScript 函数定义
在 JavaScript 中,我们可以把代码的重复部分抽取出来,放到一个函数
(functions)中。
// 举例
function ourFunction() {
console.log("Heyya, World");
}
//调用函数
ourFunction();
带参数函数定义
函数的参数parameters
在函数中充当占位符(也叫形参)的作用,参数可以为一个或多个。调用一个函数时所传入的参数为实参,实参决定着形参真正的值。
函数全局变量定义
在 JavaScript 中, 作用域
影响着变量的作用范围。在函数外定义的变量具有 全局
作用域。这意味着,具有全局作用域的变量可以在代码的任何地方被调用。
没有使用var
关键字定义的变量,会被自动创建在全局作用域中,变成全局变量。当在代码其他地方无意间定义了一个变量,刚好变量名与全局变量相同,这时候会产生意想不到的后果,可能导致你的代码出现BUG。因此你应该总是使用var关键字来声明你的变量。
函数局部变量定义
在一个函数内声明的变量,以及该函数的参数都是局部变量,意味着它们只在该函数内可见。
函数全局变量与局部变量差异
一个程序中有可能具有相同名称的 局部
变量 和 全局
变量。在这种情况下,局部
变量将会优先于 全局
变量。
函数使用return返回值
我们可以把数据通过函数的 参数 来传入函数,也可以使用 return
语句把数据从一个函数中传出来。
函数使用返回值进行赋值
赋值之前,先完成等号右边的操作。这意味着我们可把一个函数的返回值,赋值给一个变量。
//带参数函数定义
function myFunction(a,b){
console.log(a+b);
}
myFunction(2.3);
//函数全局变量与局部变量差异
var outerWear = "T-Shirt";
function myFunction() {
var outerWear = "sweater";
return outerWear;
}
myFunction();//输出为sweater
//函数使用return返回值
function timesFive(ia){
return ia * 5;
}
//函数使用返回值进行赋值
var processed = 0;
function process(num) {
return (num + 3) / 5;
}
processed = process(7);