JS学习之路--08

注意
该文章由JS小白(本人)编写完成,仅为个人总结和理解,若有纰漏和误解,还望多多指出,共同成长😋


数组

数组:一组数据,用[]表示,数据放到中括号里,其中的值用,隔开,是有序的集合
数组的索引:从0开始 0表示的是数组中第一个值

var arr = [1,2,3,4,5];
console.log(arr[2]);    // 3

数组的创建方式

  1. 字面量
var arr = ["a","b","c"];  //  以字面量的方式创建数组
console.log(arr[0] , arr.length);  // arr数组中索引为0(第一个值)为a  
                                     // 数组的长度(共有多少值) 3

var arr1 = [];    // 创建一个空数组arr1
console.log(arr1.length);     // 此时arr1的长度为0

arr1.length = 5; // 改变arr1的length的值
console.log(arr1);  //(5)[empty * 5]  // 会得到这样的结果,5个空值
console.log(arr1[0],arr1[2])  // 取出来的值为undefined

arr1[5] = 10; // 此时给它第六位数(索引为5)赋值为10
console.log(arr1,arr1.length);   //[empty × 5, 10]  6  会得到这样的结果

2.构造函数

var arr = new Array(1,2,3); // 构造函数方式创建数组
var arr = new Array(5);// 单个参数表示长度
// arr(5)[empty * 5];  


js数组操作



1.增 & 删

1.1 push()
可以接受多个参数,将参数追加到数组尾部,返回增加后数组的长度,原数组发生改变

var arr = [1,2,3,6];
var a = arr.push(11,22,33);
console.log(arr,a);
//(7)[1,2,3,6,11,22,33]   7

1.2 pop()
不接受参数,从数组尾部删除一个元素,返回被删除的元素原数组发生改变

var arr = [1,2,3,6];
var pop = arr.pop();
console.log(arr,pop)
//(4)[1,2,3,6]   6

1.3 shift()
不接受参数,从数组头部删除一个元素,返回被删除的元素原数组发生改变

var arr = [1,2,3,6];
var a = arr.shift(11,22);
console.log(arr,a);
//(3) [ 2, 3, 6]   1

1.4 unshift()
可以接受多个参数,将参数追加到数组头部,返回增加后数组的长度,原数组发生改变。

var arr = [1,2,3,6];
var a = arr.unshift(11,22);
console.log(arr,a);
//(6) [11, 22, 1, 2, 3, 6]   6



2.截取

2.1 slice()
无参数时,整体截取;
1个参数时,从该参数表示的索引为开始截取,直至数组结束
2个参数时,从第一个参数表示的索引位开始截取,直到第二个参数表示的索引为结束,但不包括第二个索引对应的值。
返回截取的数组,原数组不改变

2.2 splice()
无参数时,不截取
1个参数时,该参数表示开始的索引。直至数组结束
2个参数时,第二个参数表示从第一个参数开始截取的个数
3个及以上参数时,将第三个及之后的参数插入被截取的开始的位置。
返回截取的数组,原数组发生改变

var arr = [11,2,3,5];
var a = arr.slice(0,1);
console.log(arr,a);         //(4) [11, 2, 3, 5]    [11]
var a = arr.splice(1,2,33,44);
console.log(arr,a);      //(4) [11, 33, 44, 5]      (2) [2, 3]



3.排序


3.1 reverse()
数组元素翻转
将原数组中元素首尾顺序翻转,返回翻转后的数组,原数组发生改变.

var arr = [1,2,3,4];
var a = arr.reverse();
console.log(arr,a); //  [4, 3, 2, 1]   [4, 3, 2, 1]



3.2 sort()
无参数时,按照字符串的大小进行排序(按排序),返回排序后的数组,原数组发生改变
当为函数时,根据函数内语句判断先后。
sort(function(a,b){
return a - b; //按数字从小到大排序
return b - a; //按数字从大到小排序
})

var arr = [5,11,8,22,3,9];
var a = arr.sort();
console.log(arr,a);   //(6) [11, 22, 3, 5, 8, 9]      (6) [11, 22, 3, 5, 8, 9]


arr.sort(function(a,b){
return a - b;   // 从小到大
// return b - a;  //  从大到小
});
        
console.log(arr,a);  //(6) [22, 11, 9, 8, 5, 3]     (6) [22, 11, 9, 8, 5, 3]



4.join()
数组转换成字符串,无参数时默认分隔符为逗号,有参数时分隔符为输入的参数

var arr = [1,2,3,4];        
var str = arr.join("");     //"1234"
var str = arr.join("+++++");   //"1+++++2+++++3+++++4";



5.合并 concat()
合并数组 不改变原数组

var arr1 = [1,2];
var arr2 = [3,4];
            
var arr = arr1.concat(arr2);  //[1,2,3,4]
var arr = arr1.concat(11,22);  //[1,2,11,22]



以上是关于JS第八小节的总结,下次再见😘

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第三章 类型、值和变量 1、存取字符串、数字或布尔值的属性时创建的临时对象称做包装对象,它只是偶尔用来区分字符串值...
    坤少卡卡阅读 3,833评论 0 1
  • 原创声明 本文系作者辛苦码字所得,欢迎分享和转载,但请在明显位置注明作者的如下信息:笔名:来碗鸡蛋面简书主页:ht...
    来碗鸡蛋面阅读 8,415评论 0 4
  • 第一部分:快速入门JS学习中的一些注意点:2018.8.16基础知识: 入门JavaScript是世界上最流行的脚...
    天山雪莲_38324阅读 3,529评论 0 1
  • 一、数组定义 array() 1、索引数组 在一个变量中,存储一个或多个值。数组中的每一个元素都有一个访问ID,根...
    竹与豆阅读 3,505评论 0 0
  • JS基础 页面由三部分组成:html:超文本标记语言,负责页面结构css:层叠样式表,负责页面样式js:轻量级的脚...
    小贤笔记阅读 3,764评论 0 5