Heim > Web-Frontend > js-Tutorial > Hauptteil

JS-Arrays, Strings und mathematische Funktionen

jacklove
Freigeben: 2018-05-21 11:55:55
Original
1330 Leute haben es durchsucht

In diesem Artikel werden js-Arrays, Strings und Funktionen erläutert.

Welche Funktionen haben Push, Pop, Shift, Unshift, Join und Split in der Array-Methode?

Push: Fügen Sie am Ende des Arrays ein Element hinzu. Die Syntax lautet Array. push (das hinzuzufügende Element); der Rückgabewert ist die Länge des Arrays

pop: löscht das letzte Element des Arrays, die Syntax ist array.pop( ); der Rückgabewert ist der Name des gelöschten Elements

Verschiebung: das erste Element des Arrays löschen, die Syntax ist array.shift(); der Rückgabewert ist der Name des gelöschten Elements

unshift: ein Element hinzufügen am Anfang des Arrays und die nachfolgenden Elemente werden rückwärts versetzt, die Syntax lautet array.unshift (das hinzuzufügende Element); der Rückgabewert ist die Länge des Arrays

join: Verketten Sie das Array in eine Zeichenfolge, ohne das ursprüngliche Array zu ändern, die Syntax ist array.join(), der Rückgabewert ist die vollständige Zeichenfolge

split : Teilen Sie die Zeichenfolge in ein Array auf, ohne die ursprüngliche Zeichenfolge zu ändern. Die Syntax ist string. split('separator');

Code:

Verwenden Sie Splice, um die Push- und Pop-, Shift-, Unshift-Methode zu implementieren.

Splice implementiert Push:

new1
[91, 3, 2, 1, 34, 5] //Element des neuen1-Arrays new1.splice(new1. length,0,91) //new1.length stellt dar, dass nach der letzten Ziffer des Arrays 0 ist das hinzuzufügende Schlüsselwort, 91 ist das hinzuzufügende Element []

new1
[91, 3, 2, 1, 34, 5, 91] // Element 91 wurde am Ende des Arrays erfolgreich hinzugefügt new1

Verwenden Sie Splice, um Pop zu implementieren:

new1
[91, 3, 2, 1, 34 , 5, 9, 91] // Die Elemente von new1 array new1.splice(new1.length-1,1) //new1.length stellt die letzte Ziffer des Arrays dar, 1 ist die Länge [91]

new1
[91, 3, 2, 1, 34, 5, 9] //Letztes Element 91 erfolgreich löschen

Spleiß implementiert Verschiebung:

neu1 91, 3, 2, 1, 34, 5, 645] //Elemente des neuen1-Arrays new1.splice(0,1) //0 stellt die Indexnummer des Array-Index dar, 1 stellt die Anzahl der Löschungen dar [91] //Zurück zum Löschen von Element new1 🎜>[3, 2, 1, 34 , 5, 645] //Elemente des neuen1-Arrays new1.splice(0,0,91) //Die erste 0 stellt die Indexnummer des Array-Index dar, und die zweite 0 ist der Schlüsselwortzusatz, 91 ist das hinzuzufügende Element []

new1
[91, 3, 2, 1, 34, 5, 645] //Element 91 erfolgreich hinzugefügt

an der ersten Position des Arrays

Verwenden ein Array zum Zusammenfügen der folgenden Zeichenfolge

var prod = {    name: '女装',    styles: ['短款', '冬季', '春装']
};function getTp(data){  var new1  = prod.name;  var new2  = prod.styles;  var arrey =[];
  arrey.push(&#39;<dl class="product">&#39;);
  arrey.push("<dt>"+new1+"</dt>");  for(var i =0;i<new2.length;i++){
  arrey.push("<dd>"+new2[i]+"</dd>")
  }
  arrey.push(&#39;</dl>&#39;);  console.log(arrey.join());  
}
getTp(prod)//<dl class="product">,<dt>女装</dt>,<dd>短款</dd>,<dd>冬季</dd>,<dd>春装</dd>,</dl>
Nach dem Login kopieren

Schreiben Sie eine Suchfunktion, um die folgenden Funktionen zu implementieren
var arr = [ "test" , 2 , 1.5 , false ]function find(arr,add){  for(var i = 0;i < arr.length; i++){    if(add==arr[i] && add !== 0){      return console.log(i)
    }
  }  console.log(-1)
}
find(arr, "test") // 0find(arr, 2) // 1find(arr, 0) // -1
Nach dem Login kopieren

Schreiben Sie eine Funktion filterNumeric, um die folgenden Funktionen zu implementieren
arr = ["a", 1,3,5, "b", 2];var arre = [];function filterNumeric(arr){  for(var i= 0; i< arr.length;i++){      if(typeof arr[i]===&#39;number&#39;){
      arre.push(arr[i])
      }
  }  console.log(arre);
}
filterNumeric(arr)  //[1, 3, 5, 2]
Nach dem Login kopieren

Das Objekt obj hat ein className-Attribut, und der darin enthaltene Wert ist eine durch Leerzeichen getrennte Zeichenfolge (ähnlich dem class-Attribut des HTML-Elements). Schreiben Sie die Funktionen „addClass“ und „removeClass“, die die folgenden Funktionen haben:

var obj = {  className: &#39;open menu&#39;};  var shu = obj.className.split(" ");     
function addClass(obj,nano){                
  for(var i = 0;i< shu.length; i++) {        
    if(shu[i] === nano) {              
      return console.log("因为"+nano+"已经存在,此操作无任何办法");
    }                             
  }
  shu.push(nano);                   
 //console.log(shu);
  obj.className = shu.join(" ");   console.log(obj);
} 
addClass(obj, &#39;new&#39;);          //Object {className: "open menu new"}addClass(obj, &#39;open&#39;);        //因为open已经存在,此操作无任何办法addClass(obj, &#39;me&#39;);           // Object {className: "open menu new me"}console.log(obj.className);    // open menu new mefunction removeClass(obj,habo){  //console.log(shu)
  for(var i = 0;i<shu.length;i++){    if(shu[i] === habo) {
      shu.splice(i,1);
    }
  }
  obj.className = shu.join(&#39; &#39;);  console.log(obj);
}
removeClass(obj,"open");        //Object {className: "menu new me"}removeClass(obj, &#39;blabla&#39;);    //Object {className: "menu new me"}
Nach dem Login kopieren

Schreiben Sie eine Camelize-Funktion , konvertieren Sie die Zeichenfolge in Form von my-short-string in die Zeichenfolge in Form von myShortString

function camelize(lama){  var lala = lama.split("-");  //["list", "style", "image"]
  var a =[lala[0]];  for(var i =1; i<lala.length; i++) {    var num =lala[i][0].toUpperCase();        //"S",    "I"
    var b = lala[i].replace(lala[i][0],num)
    a.push(b)  
  }console.log(a.join(""))
}
camelize("background-color")   //"backgroundColor"camelize("list-style-image")    //"listStyleImage""
Nach dem Login kopieren

Was gibt der folgende Code aus? Warum?

arr = ["a", "b"];  
arr.push( function() { alert(console.log(&#39;hello hunger valley&#39;)) } );
arr[arr.length-1]()  //
Nach dem Login kopieren

Die Ausgabe ist der Inhalt der Funktion „Hallo Hunger Valley“ und das Popup-Fenster wird unterdefiniert angezeigt. Da im zweiten Absatz die gesamte Funktion direkt hinter dem Array arr hinzugefügt wird, um ihr letztes Element zu werden, und der letzte Satz bedeutet, dass der Aufruf für das letzte Element des arr-Arrays ausgeführt wird, wird console.log nach der Ausführung zerstört Das gedruckte Ergebnis ist „Hallo Hungertal“. Das Ergebnis des Popup-Fensters ist unterdefiniert eine ageSort-Funktion zum Implementieren der folgenden Funktionen

arr = ["a", 1 , 3 , 4 , 5 , "b" , 2];function filterNumericInPlace(arr){ 
  for(var i= 0; 0< arr.length; i++) {    
    if( typeof arr[i] !== &#39;number&#39;){
      arr.splice(i,1)
    }       
  }  console.log(arr);  // [1,3,4,5,2]}
filterNumericInPlace(arr);
Nach dem Login kopieren

Schreiben Sie einen Filter. Die Funktion (arr, func) wird zum Filtern von Arrays verwendet und akzeptiert zwei Parameter. Der erste ist das zu verarbeitende Array und der zweite Parameter ist der Rückruffunktion (die Rückruffunktion durchläuft und akzeptiert jedes Array-Element und behält das Element bei, wenn die Funktion true zurückgibt, andernfalls wird das Element gelöscht)

var john = { name: "John Smith", age: 23 };var mary = { name: "Mary Key", age: 18 };var bob = { name: "Bob-small", age: 6 };var people = [ john, mary, bob ];function ageSort(data){
  data.sort(function (a,b){    return a.age-b.age;
  })  console.log(data);
}
ageSort(people); // [ bob, mary, john ]
Nach dem Login kopieren

String

Schreiben Sie eine ucFirst-Funktion, um das Zeichen zurückzugeben dessen erster Buchstabe ein Großbuchstabe ist

function isNumeric (el){    return typeof el === &#39;number&#39;; 
}
arr = ["a",3,4,true, -1, 2, "b"];function filter(arr, func){  
  for(var i =0;i<arr.length;i++){    if(!func(arr[i])){
      arr.splice(i,1);
    }
  }  return arr;
}
arr = filter(arr, isNumeric) ;console.log(arr);
arr = filter(arr,function(val){ return val > 0});console.log(arr); 
[3, 4, -1, 2]
[3, 4, 2]
Nach dem Login kopieren

Schreiben Sie eine Funktion truncate(str, maxlength). Wenn die Länge von str größer als maxlength ist, wird str auf maxlength gekürzt und hinzugefügt..., z. B.

function ucFirst(daho){  var add= daho[0].toUpperCase();
  daho=daho.replace(daho[0],add)  console.log(daho);
}
ucFirst("hunger")"Hunger"
Nach dem Login kopieren

Mathematische Funktion

Schreiben Sie eine Funktion limit2, halten Sie die Zahlen auf zwei Dezimalstellen, Bit, Rundung, wie zum Beispiel:

function truncate(str, maxlength){  if(str.length-1>maxlength){
    add = str.substr(0,maxlength);    console.log(add+"...");
  }else{    return console.log(str);
  }
}
truncate("hello, this is hunger valley,", 10)
truncate("hello world", 20)"hello, thi...""hello world"
Nach dem Login kopieren

Schreiben Sie eine Funktion, um die Zufallszahl von min nach max zu erhalten, einschließlich min, ausgenommen max

var num1 = 3.456;function limit2(num){
  num=Math.round(num*100)/100;  console.log(num);
}
limit2(num1)
limit2(2.42)3.462.42
Nach dem Login kopieren

Schreiben Sie eine Funktion, um die Zufallszahl von min bis max zu erhalten. Zufällige ganze Zahlen zwischen, einschließlich min, einschließlich max

function habo(min,max){   console.log(Math.random()*(min-max)+max)
 }
 habo(5,15)
Nach dem Login kopieren

Schreiben Sie eine Funktion, um ein zufälliges Array der Elemente zu erhalten Das Array besteht aus Zufallszahlen mit der Länge len, dem Mindestwert und dem Höchstwert (einschließlich)

function habo(min,max){
  add = Math.random()*(min-max)+max;  console.log(Math.round(add));  
 }
 habo(5,12)
Nach dem Login kopieren

In diesem Artikel werden die Inhalte im Zusammenhang mit JS-Arrays, Strings und mathematischen Funktionen erläutert zur chinesischen PHP-Website.

Verwandte Empfehlungen:

Über JS-Zeitobjekte und Rekursionsprobleme

Einige Grundkenntnisse über CSS-Stile

Erläuterung zu JS-Timer- und Schließungsproblemen

Das obige ist der detaillierte Inhalt vonJS-Arrays, Strings und mathematische Funktionen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!