JS从零开始(33)

103 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第33天,点击查看活动详情

join()

这是数组中的一个api(数组中预先定义的函数),通过这个方法可替换之前我们讲过的用for循环遍历数组使用指定的内容分隔数组。

image.png

上面这种方法是并不推荐的,因为字符串拼接过多很容易导致内存溢出,实际上建议的方法使用join(),如:

var arr = ['red', 'blue', 'green', 'pink'];
var arr2 = arr.join('|');
console.log(JSON.stringify(arr2));//"red|blue|green|pink"

很明显使用预定义函数要比使用for循环简单很多。

数组倒转

有三种方法:

  • 创建一个新数组,然后将原数组从最后一直到最前面依次赋值给新数组
  • 重新声明一个变量作为存储数组元素的容器,然后依次交换数组前后的值(常见)
  • 使用预定义函数(推荐)

例(方法三):

var arr = ['red', 'blue', 'green', 'pink'];
var arr2 = arr.reverse();
console.log(JSON.stringify(arr2));//["pink","green","blue","red"]

数组去重的另外一种方式

昨天我们讲了数组去重,那我们如果要挨个把去重后的数组元素放进新数组该怎么办呢?👇

image.png

这里我们用到了设立一个flag的方式,目的是为了做一个记号,来标记相同数组元素的做法,同时这里也用到了函数并对其进行封装,函数里面是一个双重循环+条件判断语句。

解释:先声明一个数组array1并赋初值,然后对其遍历,如果原数组array1中有元素和新数组resetarr中的数组元素相同,那么令布尔值为false,此时便不再将其放入新数组中,以此类推,新数组就出来了。

函数

什么是函数?

函数其实就是将一些代码进行封装,以便日后有需要,直接将其调用,不需要重复写代码,函数的封装既节省了时间,又使开发变得更简洁。

ps:函数的本质也是对象,但是我们使用typeof检查它的类型时,会返回function

image.png

函数有什么作用?

1、节省时间,避免重复编写; 2、简化开发过程; 3、高内聚,低耦合。