Dieses Mal bringe ich Ihnen JavaScript-Array-String-Mathematische Funktion, Was sind die Vorsichtsmaßnahmen bei der Verwendung von JavaScriptArray-String-Mathematische Funktion? Folgendes ist ein praktischer Fall, werfen wir einen Blick darauf.
Welche Funktionen haben Push, Pop, Shift, Unshift, Join und Split in der Array-Methode?
Die push()-Methode fügt ein oder mehrere Elemente am Ende des Arrays hinzu und gibt die neue Länge des Arrays (Längenattributwert) zurück.
Die Methode pop() löscht das letzte Element in einem Array und gibt dieses Element zurück.
Die Methode „shift()“ löscht das erste Element des Arrays und gibt dieses Element zurück. Diese Methode ändert die Länge des Arrays.
Die Methode unshift() fügt ein oder mehrere Elemente am Anfang des Arrays hinzu und gibt den neuen Längenwert des Arrays zurück.
Die Methode join() fügt alle Elemente im Array zu einem String zusammen.
**split() **Die Methode teilt ein String-Objekt in ein String-Array auf, indem sie den String in Teilstrings aufteilt.
Codefrage
Array
Verwenden Sie Splice, um Push-, Pop-, Shift- und Unshift-Methoden zu implementieren.
Definition und Verwendung
Die Methode splice() wird verwendet Einfügen und Löschen oder Ersetzen von Elementen eines Arrays.
Syntax
arrayObject.splice(index,howmany,element1,.....,elementX)
Parameterbeschreibung
Index Erforderlich. Gibt an, wo Elemente hinzugefügt/entfernt werden sollen. Dieser Parameter ist der Index des Array-Elements, dessen Einfügen und/oder Löschen begonnen werden soll, und muss eine Zahl sein.
Wie viele sind erforderlich? Gibt an, wie viele Elemente entfernt werden sollen. Muss eine Zahl sein, kann aber „0“ sein. Wenn dieser Parameter nicht angegeben wird, werden alle Elemente vom Index bis zum Ende des ursprünglichen Arrays gelöscht. element1 optional. Gibt das neue Element an, das dem Array hinzugefügt werden soll. Beginnen Sie mit dem Einfügen ab dem Index, auf den der Index zeigt.
elementX Optional. Dem Array können mehrere Elemente hinzugefügt werden.
Rückgabewert
Wenn ein Element aus arrayObject gelöscht wird, wird das Array zurückgegeben, das das gelöschte Element enthält.
splice->push var a = [1,2,3,4,5] var b = [1,2,3,4,5] console.log(a); console.log(b); a.push(6); b.splice(5,1,6); console.log(a); console.log(b); splice->pop var a = [1,2,3,4,5] var b = [1,2,3,4,5] console.log(a); console.log(b); a.pop(); b.splice(4,1); console.log(a); console.log(b); splice->shift var a = [1,2,3,4,5] var b = [1,2,3,4,5] console.log(a); console.log(b); a.shift(); b.splice(0,1); console.log(a); console.log(b); splice->unshift var a = [1,2,3,4,5] var b = [1,2,3,4,5] console.log(a); console.log(b); a.unshift(-1); b.splice(0,0,-1); console.log(a); console.log(b);
Verwenden Sie ein Array, um die folgende Zeichenfolge zu verbinden
var prod = { name: '女装', styles: ['短款', '冬季', '春装'] };function getTpl(data){//todo...};var result = getTplStr(prod); //result为下面的字符串 <dl class="product"> <dt>女装</dt> <dd>短款</dd> <dd>冬季</dd> <dd>春装</dd> </dl>
Code:
var prod = { name: '女装', styles: ['短款', '冬季', '春装'] }; function getTplStr(data){ var htmls = []; htmls.push('<dl class="product">','<dt>'+data,name+'<dt>'); for(i=0;i<data.styles.length;i++){ htmls.push('<dd>'+data.styles[i]+'<dd>') } htmls.push('<dl>'); var htmls = htmls.join('') return htmls }; var result = getTplStr(prod); //result为下面的字符串 console.log(result)
Schreiben Sie eine Suchfunktion, um die zu implementieren folgende Funktion
var arr = [ "test", 2, 1.5, false ] find(arr, "test") // 0 find(arr, 2) // 1 find(arr, 0) // -1
Code:
var arr = [ "test", 2, 1.5, false ] var find = function(a,b){ console.log(a.indexOf(b)) } find(arr, "test") // 0 find(arr, 2) // 1 find(arr, 0) // -1
Schreiben Sie einen FunktionsfilterNumeric, um die folgenden Funktionen zu implementieren
arr = ["a", 1,3,5, "b", 2]; newarr = filterNumeric(arr); // [1,3,5,2]
Code :
Methode eins:
arr = ["a", 1,3,5, "b", 2]; var filterNumberic = function(data){ var a = []; for(i=0;i<data.length;i++){ if(typeof data[i] === 'number'){ a.push(data[i]); } } return a }
newarr = filterNumberic(arr); // [1,3,5,2]
console.log(newarr)
Methode zwei:
arr = ["a", 1,3,5, "b", 2]; function isNumber(element) { return typeof element === 'number'; } var newarr = arr.filter(isNumber) console.log(newarr)
Das Objekt obj verfügt über ein className-Attribut und der darin enthaltene Wert ist eine durch Leerzeichen getrennte Zeichenfolge (ähnlich der Klassenfunktion des HTML-Elements). Schreiben Sie die Funktionen addClass und removeClass , die die folgenden Funktionen haben:
var obj = {className: 'open menu'}addClass(obj, 'new') // obj.className='open menu new'addClass(obj, 'open') // 因为open已经存在,此操作无任何办法addClass(obj, 'me') // obj.className='open menu new me'console.log(obj.className) // "open menu new me" removeClass(obj, 'open') // obj.className='menu new me' removeClass(obj, 'blabla') // 不变
Code:
var obj = {className: 'open menu'}var addClass = function(a,b){var name = a.className.split(" ");if(name.indexOf(b) === -1) {name.push(b);}else{console.log("因为"+b+"已经存在,此操作无任何办法");}a.className = name.join(" ");console.log('obj.className='+a.className);}var removeClass = function(a,b){var name = a.className.split(" ");if(name.indexOf(b) !== -1){name.splice(name.indexOf(b),1)a.className = name.join(" ");console.log('obj.className='+a.className)}else{console.log('不变')}} addClass(obj, 'new') // obj.className='open menu new' addClass(obj, 'open') // 因为open已经存在,此操作无任何办法 addClass(obj, 'me') // obj.className='open menu new me' console.log(obj.className) // "open menu new me" removeClass(obj, 'open') // obj.className='menu new me' removeClass(obj, 'blabla') // 不变
Schreiben Sie eine Camelize-Funktion, um einen String in die Form my-short-string umzuwandeln in eine Zeichenfolge in Form von myShortString umwandeln, z. B.:
camelize("background-color") == 'backgroundColor' camelize("list-style-image") == 'listStyleImage'
Code:
function camelize(string){ return string.replace(/-/g,'') } console.log(camelize("background-color")) camelize("background-color") == 'backgroundColor' camelize("list-style-image") == 'listStyleImage'
Was gibt der folgende Code aus? Warum?
arr = ["a", "b"]; arr.push( function() { alert(console.log('hello hunger valley')) } ); arrarr.length-1 // ?
Weil arr.push( function() { Alert(console.log('hello hunger Valley')) } );change function() { Alert(console.log( 'Hallo Hunger Valley') Push bis zum letzten Bit von arr[], arr[arr.length-1]() nimmt das letzte Bit des Arrays und führt dann die Funktion sofort aus, weil function() { alarm(console. log('console.log in hello hunger Valley') darf nur in der Konsole geöffnet werden, daher ist das Ergebnis undefiniert
Schreiben Sie eine Funktion filterNumericInPlace, um die Zahlen im Array zu filtern und zu löschen Nicht-Ziffern
arr = ["a", 1,3,4,5, "b", 2]; //对原数组进行操作,不需要返回值 filterNumericInPlace(arr); console.log(arr) // [1,3,4,5,2]
arr = ["a","d", 1,3,4,5, "b", 2]; //对原数组进行操作,不需要返回值 function filterNumericInPlace(data){ for(i=0;i<data.length;i++){ if(typeof data[i] === 'string'){ data.splice(i,1); i--;//splice指针减少1,否则获取不了数组中全部元素。 } } } filterNumericInPlace(arr); console.log(arr) // [1,3,4,5,2]
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 ] ageSort(people) // [ bob, mary, john ]
function ageSort(arr){ arr.sort(function(a,b){return a.age-b.age}) return arr } 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 ] ageSort(people) // [ bob, mary, john ] console.log(ageSort(people))
function ageSort(a){ for(i=0;i0){ var b = a[i]; a[i] = a[j]; a[j] = b; } } } return a } 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 ] ageSort(people) // [ bob, mary, john ] console.log(ageSort(people))
(die Rückruffunktion durchläuft und akzeptiert jedes Array-Element, behält das Element bei, wenn die Funktion true zurückgibt, andernfalls löscht es das Element), um die folgenden Funktionen zu implementieren:
function isNumeric (el){return typeof el === 'number';}arr = ["a",3,4,true, -1, 2, "b"] arr = filter(arr, isNumeric) ; // arr = [3,4,-1, 2], 过滤出数字 arr = filter(arr, function(val) { return val > 0 }); // arr = [2] 过滤出大于0的整数
function filter(data,callback){return data.filter(callback)} function isNumeric (el){ return typeof el === 'number'; } arr = ["a",3,4,true, -1, 2, "b"] arr = filter(arr, isNumeric) ; // arr = [3,4,-1, 2], 过滤出数字 console.log(arr) arr = filter(arr, function(val) { return val > 0 }); // arr = [2] 过滤出大于0的整数 console.log(arr)
Schreiben Sie eine ucFirst-Funktion, die das Zeichen zurückgibt, dessen Der erste Buchstabe ist ein Großbuchstabe
Code:
ucFirst("hunger") == "Hunger"
Schreiben Sie eine Funktion truncate(str, maxlength). , str wird auf maximale Länge gekürzt und hinzugefügt Schreiben Sie eine Funktion limit2, behalten Sie zwei Nachkommastellen bei und runden Sie sie ab, z Zufallszahl von min bis max, einschließlich min, aber ohne max >Code:
function ucFirst(string){ return string[0].toUpperCase()+string.slice(1); } console.log(ucFirst("hunger")) ucFirst("hunger") == "Hunger"
Schreiben Sie eine Funktion, um ein Zufallsarray zu erhalten. Die Elemente im Array sind Zufallszahlen mit der Länge len, dem Mindestwert und dem Maximalwert (einschließlich).
Code:
truncate("hello, this is hunger valley,", 10)) == "hello, thi..."; truncate("hello world", 20)) == "hello world"
Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!
function truncate(str,maxlength){ if(str.length>maxlength){ var sub = str.substring(maxlength) str = str.replace(sub,'...'); } return str; } console.log(truncate("hello, this is hunger valley,", 10)); truncate("hello, this is hunger valley,", 10) == "hello, thi..."; truncate("hello world", 20) == "hello world"
JS-Schließungen und -Timer
var num1 = 3.456 limit2( num1 ); //3.46 limit2( 2.42 ); //2.42
JS Dom- und Veranstaltungszusammenfassung
var num1 = 3.456 function limit2(data){ var num = Math.round(data*100); return num/100 } limit2( num1 ); //3.46 limit2( 2.42 ); //2.42 console.log(limit2(num1)); console.log(limit2(2.42)); console.log(limit2(-1.15555555))
Das obige ist der detaillierte Inhalt vonJavaScript-Array-String-Math-Funktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!