Heim Web-Frontend js-Tutorial Zusammenfassung gängiger Methoden für JS-Arrays und -Strings

Zusammenfassung gängiger Methoden für JS-Arrays und -Strings

Jan 14, 2017 am 11:37 AM

Ich habe mich kürzlich mit den Grundlagen von js beschäftigt, angefangen mit Arrays und Strings.

string Gängige Methoden:

1.substring (Start-Startpositionsindex, End-Endpositionsindex) Die abgefangene Position enthält nicht das Endpositionszeichen und es wird nur ein Parameter geschrieben, um das Abfangen anzuzeigen von der Startposition. Am Ende

var str='abcdefg'; 
str.substring(1) //得到bcdefg  str.substring(1,3) //得到bc
Nach dem Login kopieren

wird bei der Eingabe eines negativen Werts der negative Wert auf 0 geändert, der kleinere Wert wird als Startposition verwendet

str.substing(-1,1) = >str.substring(0,1) //a
str.substring(1,-2) =>str.substring(0,1) / /a

2.slice(start Startpositionsindex, Endpositionsindex) ähnelt im Wesentlichen einem Teilstring, der Unterschied besteht darin, dass der Parameter eine negative Zahl ist.

var str='abcdefg';
str.slice(1)  //bcdefg      str.substring(1,3) // bc
Nach dem Login kopieren

Bei Eingabe eines negativen Werts wird der Wert zur Länge der Zeichenfolge addiert

str.slice(-1) =>str.slice( 6) / /g
str.slice(1,-2) =>str.slice(1,5) //bcde
str.slice(-2,-1)=>str.slice (5, 6) //Wenn der Absolutwert von f

größer als die Länge der Zeichenfolge ist, wird er zu 0

str.slice(-22) =>str.substring (0) //abcdefg

Wenn der absolute Wert des zweiten Parameters größer als die Länge der Zeichenfolge ist, geben Sie ''

3.substr (Start-Startpositionsindex, Ende der Zahl) zurück Anzahl der zurückzugebenden Zeichen)

var str='abcdefg';
str.substr(1) //bcdefg      str.substr(1,1) //b
Nach dem Login kopieren

Wenn ein negativer Wert eingegeben wird, wird der Startparameter zur Länge der Zeichenfolge hinzugefügt. Wenn das Ende negativ ist, wird der Parameter zu 0

str.substr(-1) =>str.substr(6)//g        
str.substr(-2,-3) // ''
Nach dem Login kopieren

4.charAt(index)-Methode gibt das Zeichen an der angegebenen Indexposition zurück. Wenn der Indexwert den gültigen Bereich (0 und die Zeichenfolgenlänge minus eins) überschreitet, wird eine leere Zeichenfolge zurückgegeben

var str='abcdefg';
str.charAt(2) // c
Nach dem Login kopieren

5.index(string) Gibt das erste Vorkommen in zurück die Teilzeichenfolgenposition des String-Objekts. Wenn die Teilzeichenfolge nicht gefunden wird, wird -1 zurückgegeben.

var str='abcdefga' str.indexOf('a') // 0 str.indexOf('h') //-1

6.lastIndexOf(string) Flashback-Suche

Gibt die Position des ersten Teilstringvorkommens im String-Objekt zurück. Wenn die Teilzeichenfolge nicht gefunden wird, wird -1 zurückgegeben.

var str='abcdefga' str.lastIndexOf('a') // 7

7.split(str) Teilen Sie die Zeichenfolge mithilfe der Parameter

var in ein Array auf str='abcadeafg' str.split('a') //["", "bc", "de", "fg"]

8 Die toLowerCase-Methode gibt einen String zurück, in den Buchstaben umgewandelt werden in Kleinbuchstaben umwandeln.

9. Die toUpperCase-Methode gibt einen String zurück, in dem alle Buchstaben in Großbuchstaben umgewandelt werden.

10.match() – Methode kann einen angegebenen Wert innerhalb einer Zeichenfolge abrufen oder eine Übereinstimmung für einen oder mehrere reguläre Ausdrücke finden.

11.search-Methode gibt dasselbe zurück wie die Suche nach regulären Ausdrücken Position der ersten Zeichenfolge, deren Inhalt übereinstimmt.

12.replace wird verwendet, um eine Zeichenfolge zu finden, die einem regulären Ausdruck entspricht, und dann die Übereinstimmung durch eine neue Zeichenfolge zu ersetzen

http://www.cnblogs.com/bijiapo/p/ 5451924. html

Häufig verwendete Methoden für Arrays

1. push Add to the end Gibt das hinzugefügte Array zurück

2. unshift Add to the front Gibt das hinzugefügte Array zurück

3. Verschiebung Löschen (von vorne) Geben Sie das verarbeitete Array zurück

4. Pop Löschen Sie das letzte Element. Geben Sie das verarbeitete Array zurück

5 🎜>

6. Join Konvertieren Sie das Array in einen String

var arr=[1,2,3,4,5], str=arr.join('--');
 console.log(str); // 1--2--3--4--5 以join内的参数切割数组
 console.log(arr); // [1,2,3,4,5]  原数组未变
Nach dem Login kopieren

7. Fangen Sie das Array vom Anfang (Start) bis zum Ende (Ende) ab nicht enthalten)

<返> Rückkehr zum neuen Array, das ursprüngliche Array bleibt unverändert

8. Concat-Array zusammengeführt
var arr=[1,2,3,4,5],new=arr.slice(2,4);
console.log(new);  // [3,4]
console.log(arr);  // [1,2,3,4,5]
Nach dem Login kopieren

9. ..) Splice-Array

(1). Ein Parameter fängt die negative Zahl von der Parameterposition ab und füllt sie aus, ähnlich wie beim obigen str-Slice. Gibt das abgefangene Array zurück und das ursprüngliche Array ändert sich

var arr=[1,2,3,4,5];
console.log(arr.splice(1));  // [2,3,4,5]
console.log(arr);       // [1]
console.lgo(arr.splice(-1))  // [5]
Nach dem Login kopieren

(2).Zwei Parameter des Abfangens (Startposition, Nummer) geben die ursprüngliche Array-Änderung des abgefangenen Arrays zurück

var arr=[1,2,3,4,5];
console.log(arr.splice(1,3)); // [2,3,4]
console.log(arr)       // [1,5]
arr.splice(0,1) =>arr.shift()
arr.splcie(arr.length-1,1) =>arr.pop()
Nach dem Login kopieren

(3).Erhöhung des ursprünglichen Arrays hinzufügen

var arr=[1,2,3,4,5];
console.log(arr.splice(1,0,13)); // []
console.log(arr);        // [1,13,2,3,4,5]
Nach dem Login kopieren

(4). Ersetzen Sie

var arr=[1,2,3,4,5];
console.log(arr.splice(1,2,&#39;a&#39;,&#39;b&#39;)) // [2,3]
console.log(arr);        // [1,&#39;a&#39;,&#39;b&#39;,4,5]
arr.splice(0,0,1) =>arr.unshift(1);
arr.splice(arr.length,0,1) => arr.push(1)
Nach dem Login kopieren

10. arr.forEach(item,index,array){} Durchlauf, Schleife ähnlich wie jquery every

Der item-Parameter ist der Inhalt im Array, index ist sein Index und array stellt das Array selbst dar

var arr=[1,2,3,4,5];
      arr.forEach(function(item,index,array){
      })
Nach dem Login kopieren

Beim Herausspringen aus verschachtelten Schleifen treten Probleme auf , es gibt vorerst keine Lösung;

11. Kartenmethode Die Zuordnungsverwendung ist ähnlich wie bei forEach

var men=[
       {&#39;name&#39;:1,&#39;age&#39;:12},
       {&#39;name&#39;:2,&#39;age&#39;:22},
       {&#39;name&#39;:3,&#39;age&#39;:33}
   ],
   age=men.map(function(item){
       return item.age;
   })
Nach dem Login kopieren

12. arr.sort-Sortierung

var arr=[1,2,22,11,33,3,5,4];
  console.log(arr.sort()) // [1,11,2,22,3,33,4,5]
Nach dem Login kopieren

Standardmäßig sortiert die Sortiermethode nach alphabetischer ASCII-Reihenfolge und nicht nach numerischer Reihenfolge, wie wir denken

arr.sort(function(a,b){ return a-b})

a-b从小到大 b-a从大到小

13. 顺便写写我知道的排序方法

(1)冒泡排序 每次比较相邻的两个数,如果后一个数比前一个数小,换位置

function bSort(arr){
    var tmp;
    for(var i=0,len=arr.length-1;i<len;i++){
      for(var j=0;j<len;j++){
        if(arr[j]>arr[j+1]){
          //换位置
          tmp=arr[j+1];
          arr[j+1]=arr[j];
          arr[j]=tmp;
        }
      }
    }
    return arr;
  }
  function bSort(arr){
    var tmp;
    arr.forEach(function(item,i){
      arr.forEach(function(item,i){
        if(item>arr[i+1]){
          //换位置
          tmp = arr[i + 1];
          arr[i + 1] = arr[i];
          arr[i] = tmp;
        }
      })
    })
    return arr
  }
Nach dem Login kopieren


(2)快速排序 二分法,找到中间的数,取出来(新数组),原数组没,每次和此数比较,小的放到左边,大的放到右面

function fastSoft(arr){
       var len=arr.length;
       if(len<=1){ return arr}
       var  cIndex=Math.floor(len/2),
          c=arr.splice(c,1),
          left=[],
          right=[];
       arr.forEach(function(item,i){
           if(item<c[0]){
           left.push(item);
         }else{
           right.push(item);
         }
       })
    return fastSoft(left).concat(c,fastSoft(right));
  }
Nach dem Login kopieren

14. 数组的去重也写下吧

(1)双层循环不是很好

var arr=[2,3,2,2,2,4,5],
      arr2=[];
        function find(arr2,ele){
         for(var i= 0,len=arr2.length;i<len;i++){
           if(arr2[i]==ele) return true;
         }
          return false;
        }
        for(var i= 0,len=arr.length;i<len;i++){
          if(!find(arr2,arr[i])){
            arr2.push(arr[i]);
          }
        }
Nach dem Login kopieren

(2)利用json的key值无重复

var arr=[2,3,2,2,2,4,5],
        json={},
        arr2=[];
          arr.forEach(function(item,i){
            if(!json[item]){
              json[item]=222;
            }
          });
          for(var name in json){
            arr2.push(Number(name));//类型发生变化了
          }
Nach dem Login kopieren

(3) 利用sort方法排序,去掉旁边相同项

var arr=[2,3,2,4,4,4,5],
   arr2=[];
     arr.sort();
     for(var i=0;i<arr.length;i++){
       if(arr[i]==arr[i+1]){
         arr.splice(i--,1);
       }
     }
Nach dem Login kopieren


一些常见数学方法

    math.abs() 取绝对值  math.ceil() 向上取整 math.floor() 向下取整
    math.round() 四舍五入 math.roundom
function getRan(n,m){
  return Math.floor(Math.random()*(m-n)+n);
}
Nach dem Login kopieren

数组和字符串的一些综合应用

1. 截取后缀名

(1) var str='1.xxx.avi';

str=str.substring(str.lastIndexOf('.')+1);

(2) var str='1.xxx.avi';

var arr=str.split(&#39;.&#39;);
console.log(arr[arr.length-1]);
Nach dem Login kopieren

2.字母翻转,首字母大写

var str=&#39;wo shi yi ge demo&#39;,
   arr=str.split(&#39; &#39;);
   for(var i=0;i<arr.length;i++){
     console.log()
    arr[i]=arr[i].charAt(0).toUpperCase()+arr[i].substring(1);
   }
   arr.reverse();
   str=arr.join(&#39; &#39;);
Nach dem Login kopieren

3. str中字符出现次数的统计

var str=&#39;aaaandkdffsfsdfsfssq12345&#39;,
   json={},
   n= 0,
   sName;
   for(var i= 0,len=str.length;i<len;i++){
     var Letter=str.charAt(i);
     //统计次数
     if(json[Letter]){
       json[Letter]++;
     }else{
       json[Letter]=1;
     }
   }
   //找最大
   for(var name in json){
     if(json[name]>n){
       n=json[name];
       sName=name;
     }
   }
   console.log(&#39;出现最多的字母&#39;+sName+&#39;次数为&#39;+n);
Nach dem Login kopieren

4. 简单的url参数解析

function getData() {
        var search = window.location.search.substring(1);
        if (!search) {
          return;
        }
        var arr = search.split(&#39;&&#39;),
            arr2 = [],
            json = {},
            key,
            alue;
        for (var i = 0; i < arr.length; i++) {
          arr2 = arr[i].split(&#39;=&#39;);
          key = arr2[0];
          value = arr2[1];
          json[key] = value;
        }
        return json;
       }
Nach dem Login kopieren

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持PHP中文网!

更多js数组与字符串常用方法总结相关文章请关注PHP中文网!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie erstelle ich meine eigenen JavaScript -Bibliotheken? Wie erstelle ich meine eigenen JavaScript -Bibliotheken? Mar 18, 2025 pm 03:12 PM

In Artikel werden JavaScript -Bibliotheken erstellt, veröffentlicht und aufrechterhalten und konzentriert sich auf Planung, Entwicklung, Testen, Dokumentation und Werbestrategien.

Wie optimiere ich den JavaScript -Code für die Leistung im Browser? Wie optimiere ich den JavaScript -Code für die Leistung im Browser? Mar 18, 2025 pm 03:14 PM

In dem Artikel werden Strategien zur Optimierung der JavaScript -Leistung in Browsern erörtert, wobei der Schwerpunkt auf die Reduzierung der Ausführungszeit und die Minimierung der Auswirkungen auf die Lastgeschwindigkeit der Seite wird.

Was soll ich tun, wenn ich auf den Codendruck auf Kleidungsstücke für Front-End-Thermalpapier-Quittungen stoße? Was soll ich tun, wenn ich auf den Codendruck auf Kleidungsstücke für Front-End-Thermalpapier-Quittungen stoße? Apr 04, 2025 pm 02:42 PM

Häufig gestellte Fragen und Lösungen für das Ticket-Ticket-Ticket-Ticket in Front-End im Front-End-Entwicklungsdruck ist der Ticketdruck eine häufige Voraussetzung. Viele Entwickler implementieren jedoch ...

Wie debugge ich den JavaScript -Code effektiv mithilfe von Browser -Entwickler -Tools? Wie debugge ich den JavaScript -Code effektiv mithilfe von Browser -Entwickler -Tools? Mar 18, 2025 pm 03:16 PM

In dem Artikel werden effektives JavaScript -Debuggen mithilfe von Browser -Entwickler -Tools, der Schwerpunkt auf dem Festlegen von Haltepunkten, der Konsole und der Analyse der Leistung erörtert.

Wie benutze ich Javas Sammlungsrahmen effektiv? Wie benutze ich Javas Sammlungsrahmen effektiv? Mar 13, 2025 pm 12:28 PM

In diesem Artikel wird der effektive Gebrauch des Sammlungsrahmens von Java untersucht. Es betont die Auswahl geeigneter Sammlungen (Liste, Set, Karte, Warteschlange) basierend auf Datenstruktur, Leistungsanforderungen und Thread -Sicherheit. Optimierung der Sammlungsnutzung durch effizientes Gebrauch

Wie verwende ich Quellkarten zum Debuggen, um den JavaScript -Code zu debuggen? Wie verwende ich Quellkarten zum Debuggen, um den JavaScript -Code zu debuggen? Mar 18, 2025 pm 03:17 PM

In dem Artikel wird erläutert, wie Quellkarten zum Debuggen von JavaScript verwendet werden, indem er auf den ursprünglichen Code zurückgegeben wird. Es wird erläutert, dass Quellenkarten aktiviert, Breakpoints eingestellt und Tools wie Chrome Devtools und WebPack verwendet werden.

Erste Schritte mit Chart.js: Kuchen-, Donut- und Bubble -Diagramme Erste Schritte mit Chart.js: Kuchen-, Donut- und Bubble -Diagramme Mar 15, 2025 am 09:19 AM

In diesem Tutorial wird erläutert, wie man mit Diagramm.js Kuchen-, Ring- und Bubble -Diagramme erstellt. Zuvor haben wir vier Chart -Arten von Charts gelernt. Erstellen Sie Kuchen- und Ringdiagramme Kreisdiagramme und Ringdiagramme sind ideal, um die Proportionen eines Ganzen anzuzeigen, das in verschiedene Teile unterteilt ist. Zum Beispiel kann ein Kreisdiagramm verwendet werden, um den Prozentsatz der männlichen Löwen, weiblichen Löwen und jungen Löwen in einer Safari oder den Prozentsatz der Stimmen zu zeigen, die verschiedene Kandidaten bei der Wahl erhalten. Kreisdiagramme eignen sich nur zum Vergleich einzelner Parameter oder Datensätze. Es ist zu beachten, dass das Kreisdiagramm keine Entitäten ohne Wert zeichnen kann, da der Winkel des Lüfters im Kreisdiagramm von der numerischen Größe des Datenpunkts abhängt. Dies bedeutet jede Entität ohne Anteil

Wer bekommt mehr Python oder JavaScript bezahlt? Wer bekommt mehr Python oder JavaScript bezahlt? Apr 04, 2025 am 12:09 AM

Es gibt kein absolutes Gehalt für Python- und JavaScript -Entwickler, je nach Fähigkeiten und Branchenbedürfnissen. 1. Python kann mehr in Datenwissenschaft und maschinellem Lernen bezahlt werden. 2. JavaScript hat eine große Nachfrage in der Entwicklung von Front-End- und Full-Stack-Entwicklung, und sein Gehalt ist auch beträchtlich. 3. Einflussfaktoren umfassen Erfahrung, geografische Standort, Unternehmensgröße und spezifische Fähigkeiten.

See all articles