本文将介绍以下三个方法:1.join()方法2.split()方法3.sort()方法为什么每一个JavaScript开发人人都应该知道这些方法吗?因为数组是您代码中的重要元素,所以这些方法可以使您的代码更加优雅和具有代表性。也可以在没有这些方法的情况下运行项目,但是为此必须编写不必要的代码行,这些代码行一开始就没有用。因此,让我们开始吧,首先查看两个基本方法join()和split(),然后讨论sort()方法。1.Join()方法想象这样一个场景:用户在一个数组中输入一些值,然后想把这些值当作消息或字符串。这需要使用join()方法,该方法将数组中的元素转换为字符串。toString()也用于将字符串转换为数组,但是与join()方法一起,可以使用分隔符参数,所以最好使用join()方法。join()的语法很简单,只需要使用:array.join(separator)其中separator在传递参数时是可选的,用于定义数组中要分隔的元素,可以是空格、点、逗号和单词等待。如果不传递任何参数,则其元素需要用逗号分隔。看一个例子:constarray1=[1,2,3,'My','Name','is','Ney']conststring1=array1.join()conststring2=array1.join('')conststring3=array1。join(',')conststring4=array1.join('and')conststring5=array1.join('-')conststring6=array1.join('=')conststring7=array1.join(':')conststring8=array1。join('')console.log(array1)//[1,2,3,'My','Name','is','Ney']console.log(string1)//1,2,3,My,Name,is,Neyconsole.log(string2)//123MyNameisNeyconsole.log(string3)//1,2,3,My,Name,is,Neyconsole.log(string4)//1and2and3andMyandNameandisandNeyconsole.log(string5)//1-2-3-My-Name-is-Neyconsole.log(string6)//1=2=3=My=Name=is=Neyconsole.log(string7)//1:2:3:My:Name:是:Neyconsole.log(string8)//123MyNameisNey上面举了几个例子,其中string8和string2应该讨论一下。在string2中,引号之间没有任何空格,而在string8中,它有空格。任何数量的空格都可以放在引号中,结果会相应改变。2.Split()方法那么,我们已经知道数组中的元素可以转换为字符串。数组中的字符串可以转换为元素吗?这就是split()方法的用武之地。split()方法在您必须输入消息并查看它是否包含特定单词的场景中很方便。这可以通过使用includes()方法将单词转换为数组来轻松实现。下面会提到。将字符串转换为数组后,仍然可以执行许多其他功能。从技术上讲,split()是一种字符串方法,但我会在这里提及它。先看split()的语法:string.split(separator,limit)分隔符指定用来分割字符串的字符。如果留空,整个字符串将被转换为数组中的单个元素。limit是一个可选参数,很少使用。它是一个整数,指定拆分的数量。按Limit拆分的项目将不包含在此数组中。看一些例子:这里我们将使用上面提到的join()方法示例,并使用split()方法将其转换为字符串。conststring1=`1,2,3,My,Name,is,Ney`constarray1=string1.split(',')constarrayWithLimit=string1.split(',',4)constarrayWithoutSeperator=string1.split()console.log(array1,arrayWithLimit,arrayWithoutSeperator)//['1','2','3','My','Name','is','Ney']['1','2','3','My']['1,2,3,My,Name,is,Ney']conststring2=`123MyNameisNey`constarray2=string2.split('')console.log(array2)//['1',',','2',',','3',',','M','y',',','N','a','m','e',',','i','s',',','N','e','y']conststring3=`1,2,3,My,Name,is,Ney`constarray3=string3.split(',')console.log(array3)//['1','2','3','My','Name','is','Ney']conststring4=`1and2and3andMyandNameandisandNey`constarray4=string4.split('and')console.log(array4)//['1','2','3','My','Name','is','Ney']conststring5=`1-2-3-My-Name-is-Ney`constarray5=string5.split('-')console.log(array5)//['1','2','3','My','Name','is','Ney']conststring6=`1=2=3=My=Name=is=Ney`constarray6=string.split('=')console.log(array6)//['1','2','3','我的','姓名','是','内伊']conststring7=`1:2:3:My:Name:is:Ney`constarray7=string7.split(':')console.log(array7)//['1','2','3','My','Name','is','Ney']conststring8=`123MyNameisNey`constarray8=string8.split('')console.log(array8)//['1','2','3','My','Name','is','Ney']下面一一看例子:array1,string1:只要有一个逗号,就可以分割成一个数组arrayWithLimit:指定了一个限制,所以生成数组只有四个起始元素,这是限制。arrayWithoutSeperator:如前所述,如果没有给出分隔符,整个字符串将被转换为数组的单个元素。array2:由于参数中的引号为空,split()分隔每个字符,包括空格、逗号和任何其他可能存在的字符。array4:可以看到字符串中所有的“and”都缺失了,缺失的字符串成为了数组的单个元素。如果参数中只有一个字母,结果将是许多元素和一个缺少指定元素的字符串。你可以尝试一下。因此,在使用单词或字符串作为分隔符时要非常小心。array3,array5,array,array7,array8:把上面的都拆分后,可以产生相同的字符串,这是正确的操作,因为我们只是撤销了对应字符上的join()。练习:使用join()、split()和reverse()创建一个函数现在您可以练习使用join()、split()和reverse()创建一个函数来检查用户输入的字符串是否为回文。如果您不熟悉reverse()方法,请记住它只是反转数组的元素。例如:constnum=[1,2,3,4,5,6]constreverseNum=num.reverse()console.log(reverseNum)//上面的[6,5,4,3,2,1]是split()方法。尝试一下,并在评论中分享您自己的GitHub存储库中的代码。3、sort()方法顾名思义,sort()方法就是对数组中的元素进行排序。默认情况下,sort()函数将值作为字符串进行排序。letgreekLetter=['beta','alpha','delta','gamma'];console.log(greekLetter.sort())//['alpha','beta','delta','gamma']数字排序时出现问题。因为,如果你要对数字进行排序,比如100和25,100会排在25之前,因为100中的1排在25中的2之前。letnum1=[25,100,23]console.log(num1.sort())//[100,23,25]letnum2=['25','100','23']console.log(num2.sort())//['100','23','25']可以使用一个比较函数来解决这个问题,这个方法将函数传递给语法:function(a,b){returna—b}letnum=[25,100,23]console.log(num.sort((a,b)=>{returna-b}))//[23,25,100](我们用箭头函数代替了传统的函数。)首先要了解的是比较函数。它应该根据参数返回一个负值、零值或正值——a更大还是b更大。当sort()函数比较两个值时,它将值发送到比较函数并根据返回值(负数、零或正数)对值进行排序。如果结果是否定的,则a在b之前。如果结果为正,则b在a之前。如果结果为0,则两个值的排序顺序不变。比较函数比较数组中的所有值,一次比较两个值(a,b)。·当比较25和100时,sort()方法调用比较函数(25,100)。·函数计算25-100(a,b),当结果为负数(-75)时,sort函数将25排序为小于100的值。
