持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第20天,点击查看活动详情
✔个人主页:Mr.Darcy8的掘金主页
🎉欢迎关注👀点赞👍收藏⭐留言📝以及交流人生哲理🎈学习心得🎁
引入
之前介绍了一些基本的数据类型,包括字符串、数值等。今天一起来看看一个比较高级的数据类型——数组
1. Array
JavaScript的数组称作array,可以包含任意的书类型,可以通过索引来访问每个元素。
其中,array的长度记录在length属性中:
var arr = [1, 2, 3.14, 'Hello', null, true];
arr.length; // 返回值是6
有趣的是,这个length属性是可以直接赋值的,赋值后会改变array的长度,若缺少定义则会将空缺部分表示为undefined
var arr = [1, 2, 3];
arr.length; // 3
arr.length = 6;
arr; // arr变为[1, 2, 3, undefined, undefined, undefined]
arr.length = 2;
arr; // arr变为[1, 2]
2.修改元素
直接通过索引即可修改元素为新的值。修改方式类似python的列表,中括号中间表示索引值,且索引是从0开始的
var arr = ['A', 'B', 'C'];
arr[1] = 1;
arr; // arr现在更新为['A', 1, 'C']
注意到arr[1]表示的就是arr的第二个元素,直接用赋值语句赋值即可改变元素的值。
这里也很有趣。和python不一样的是,当我们索引的值超过上限,python等其他编程语言都会报错显示越界,但JavaScript会正常运行,并扩充array的大小
var arr = [1, 2, 3];
arr[5] = 'a';
arr; // arr更新为[1, 2, 3, undefined, undefined, 'a']
3. indexOf()
array可以通过indexOf函数来搜索一个指定的元素,返回他的位置:
var arr = [1, 2, '3', 'x'];
arr.indexOf(10);
arr.indexOf(20);
arr.indexOf(30);
arr.indexOf('30');
在上面的运行过程中:
- 元素1的索引为0
- 元素2的索引为1
- 元素3没有找到返回-1
- 元素'3'的索引为2
4.slice()
如果我们需要截取array的元素(有的地方会称作是切片操作),可以采用slice函数。其会返回一个新的array
var arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G'];
arr.slice(0, 3);
arr.slice(3); // 从索引3开始到结束: ['D', 'E', 'F', 'G']
第二行代码的含义就是:切片从第一个开始,到第二个结束,(即切到后一个参数前的一个数,不包括后一个参数的索引)。
所以最后输出是:['A', 'B', 'C']
新人上路,欢迎互相帮扶~Mr_darcy8的掘金主页
可以的话给咱点个赞呗💖