Das Hinzufügen und Löschen von js-Array-Elementen war immer verwirrend. Heute habe ich endlich detaillierte Informationen gefunden^-^
var arr = new Array(); arr[0] = "aaa"; arr[1] = "bbb"; arr[2] = "ccc"; //alert(arr.length);//3 arr.pop(); //alert(arr.length);//2 //alert(arr[arr.length-1]);//bbb arr.pop(); //alert(arr[arr.length-1]);//aaa //alert(arr.length);//1 var arr2 = new Array(); //alert(arr2.length);//0 arr2[0] = "aaa"; arr2[1] = "bbb"; //alert(arr2.length);//2 arr2.pop(); //alert(arr2.length);//1 arr2 = arr2.slice(0,arr2.length-1); //alert(arr2.length);//0 arr2[0] = "aaa"; arr2[1] = "bbb"; arr2[2] = "ccc"; arr2 = arr2.slice(0,1); alert(arr2.length);//1 alert(arr2[0]);//aaa alert(arr2[1]);//undefined
Verschiebung: Löschen Sie das erste Element des ursprünglichen Arrays und geben Sie den Wert des gelöschten Elements zurück. Wenn das Array leer ist, wird undefiniert zurückgegeben
var a = [1,2,3,4,5]; var b = a.shift(); //a:[2,3,4,5] b:1
unshift: Parameter am Anfang des ursprünglichen Arrays hinzufügen und die Länge des Arrays zurückgeben
var a = [1,2,3,4,5]; var b = a.unshift(-2,-1); //a:[-2,-1,1,2,3,4,5] b:7
Hinweis: Der Testrückgabewert unter IE6.0 ist immer undefiniert und der Testrückgabewert unter FF2.0 ist 7, sodass der Rückgabewert dieser Methode unzuverlässig ist. Wenn der Rückgabewert benötigt wird, kann Splice verwendet werden anstelle dieser Methode.
pop: Löschen Sie das letzte Element des ursprünglichen Arrays und geben Sie den Wert des gelöschten Elements zurück. Wenn das Array leer ist, wird undefiniert zurückgegeben
var a = [1,2,3,4,5]; var b = a.pop(); //a:[1,2,3,4] b:5 //不用返回的话直接调用就可以了
push: Parameter am Ende des ursprünglichen Arrays hinzufügen und die Länge des Arrays zurückgeben
var a = [1,2,3,4,5]; var b = a.push(6,7); //a:[1,2,3,4,5,6,7] b:7
concat: Gibt ein neues Array zurück, das aus dem Hinzufügen von Parametern zum ursprünglichen Array
besteht
var a = [1,2,3,4,5]; var b = a.concat(6,7); //a:[1,2,3,4,5] b:[1,2,3,4,5,6,7]
splice(start,deleteCount,val1,val2,...): Lösche deleteCount-Elemente von der Startposition und füge val1, val2,... ein
var a = [1,2,3,4,5]; var b = a.splice(2,2,7,8,9); //a:[1,2,7,8,9,5] b:[3,4] var b = a.splice(0,1); //同shift a.splice(0,0,-2,-1); var b = a.length; //同unshift var b = a.splice(a.length-1,1); //同pop a.splice(a.length,0,6,7); var b = a.length; //同push
Umkehren: Kehren Sie die Reihenfolge des Arrays um
var a = [1,2,3,4,5]; var b = a.reverse(); //a:[5,4,3,2,1] b:[5,4,3,2,1]
sort(orderfunction): Sortieren Sie das Array nach den angegebenen Parametern
var a = [1,2,3,4,5]; var b = a.sort(); //a:[1,2,3,4,5] b:[1,2,3,4,5]
slice(start,end): Gibt ein neues Array zurück, das aus Elementen zwischen dem angegebenen Startindex und dem Endindex im ursprünglichen Array besteht
var a = [1,2,3,4,5]; var b = a.slice(2,5); //a:[1,2,3,4,5] b:[3,4,5]
join(separator): Kombinieren Sie die Elemente des Arrays zu einer Zeichenfolge und verwenden Sie dabei ein Trennzeichen als Trennzeichen. Wenn es weggelassen wird, wird das Standardkomma als Trennzeichen verwendet
var a = [1,2,3,4,5]; var b = a.join("|"); //a:[1,2,3,4,5] b:"1|2|3|4|5"
Geben Sie mir eine andere Methode zur Verwendung von Arrays zur Simulation von JavaStringBuffer zur Verarbeitung von Zeichenfolgen:
/** * 字符串处理函数 */ function StringBuffer() { var arr = new Array; this.append = function(str) { arr[arr.length] = str; }; this.toString = function() { return arr.join(""); //把append进来的数组ping成一个字符串 }; }
Ich habe plötzlich entdeckt, dass Join eine gute Möglichkeit ist, ein Array in eine Zeichenfolge in meiner heutigen Anwendung umzuwandeln, also habe ich es in ein Objekt gekapselt und verwendet:
/** * 把数组转换成特定符号分割的字符串 */ function arrayToString(arr,separator) { if(!separator) separator = "";//separator为null则默认为空 return arr.join(separator); } /** * 查找数组包含的字符串 */ function arrayFindString(arr,string) { var str = arr.join(""); return str.indexOf(string); }
Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er gefällt Ihnen allen.