1·Array
声明方式
1)new关键字来实例化数组
var arr1 = new Array() --- 声明了一个空数组
var arr2 = new Array(10) --- 声明了一个长度为10的数组 但没有数据
var arr3 = new Array ( 1,2) --- 声明了一个具有出事数据的数组
2)字面量
var arr4 = [ ] ; --- 声明了一个空数组
var arr4 [11] = 11; ---- arr4.lenth = 12;
var arr5 = [ 10] ; --- 声明了一个长度为1, 数据为数字10的数组
数组的特点 : 一 内存空间是连续的,可以通过数组索引来找到数组里面的任意一个数据
二 数组里面可以存放任意类型的数据
2·基本数据类型传值和引用数据类型传值
--- 基本数据类型传值
var arr1 = [ 22 ] ;
var arr2 = arr1 ;
arr1 = [ 33 ] ; ---- arr2 任然为 [ 22 ];
--- 引用数据类型传值
var arr3 = [ 11, 22 ] ;
var arr4 = arr3;
arr3 [ 0 ] = 44; ----- arr4 为 [ 44,22 ];
3·数组的相关方法
arr . join() ---- 将数组里的元素通过指定的分隔符拼接成字符串
arr.concat() ---- 连接两个或者多个数组(或普通数据) 会解析新连接的数组元素追加到老数组尾部
例:var arr1 = [ 1, 2,"good"];
var arr2 = [ function(){},[ 10,12] ] ;
var arr 3 = [ ];
arr3 = arr3.concat ( arr1 , arr2 ) ----- [ 1, 2 , "good" , function(){} , [ 10 , 12 ] ];
arr.push() ---- 在数据末尾添加一个新的元素,不会生成新的数组,只是在老数组的基础上进行修改
如果追加的是数组,push方法不会解析数组元素,而是直接把整个数组追加到老数组尾部
例:var arr1 = [ 1 , 2 ,"good" ] ;
var arr2 = [ 10, 11 ] ;
arr.push( arr2 ) ---- 返回数组长度为 4
arr.pop () 从数组尾部删除一个元素并返回该元素
arr.unshift () 在数组的头部添加一个新的元素,并返回新数组长度
如果添加的是数组,unshift方法不糊解析数组元素,
而是把整个数组当成一个元素添加到数组头部
arr.shift () 从数组的头部删除一个元素并返回该元素
arr.sort () 对数组进行升序排列,然后返回排序后的数组
也可以接收一个排序函数,自定义的函数可自己的一排序规则,代替默认规则
例: function upIdext ( a , b ) {
return a - b ; ----------- 升序 b - a为逆序
}
var arr = [ 4,6,3,1,2,7,8,5,9 ] ;
arr.sort ( upIndex ) ; 返回结果为 arr = [ 1,2,3,4,5,6,7,8,9 ] ;
arr.reverse ( ) 对元素进行倒叙排列 返回排序后的数组
arr.slice( a , b ) 接收两个参数
参数1 :开始索引 (包含索引为 a 的元素)
参数2:结束索引 (不包含索引为b的元素)
若只写一个参数,默认为开始索引,直到找到最后一个元素为止
4·Boolean(布尔数据类型)
实例化布尔类型的数据
方法1:new关键字 例: var bool = new Boolean;
方法2:字面量方式 例: var bool = true;
布尔数据类型的显隐式转换
隐式转换 :null 0 -0 NaN "" undefined false
显式转换 :var bool = new Boolean(false);
5·Number数据类型
声明方式:
1 new关键字 var num = new Number
2 字面量形式 var num = 3;
最大数 Number.MAX_VALUE 最小数 Number.MIN_VALUE
6·String数据类型
声明方式
1-new关键字 var str = new String();
2-字面量形式 var str = " 33"; 用引号包裹
大小写转换
str.toUpperCase() 大写 str.toLowerCase () 小写
str.charAt() 返回指定索引处的字符
str.indextOf() 返回指定字符处的索引