您好,登錄后才能下訂單哦!
這篇文章主要介紹js中級腳本算法有哪些,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
摘要: 區間求值算法 function sumAll(arr) { var sum =0; if(arr[0]<=arr[1]){ for(var i=arr[0];i<=arr[1];i++){ sum = sum + i; } }else{ for(var i=arr[1];i<=arr[0];i++){ sum = sum + i; } } return sum; } sumAll([1, 4]); 傳遞給你一個包含兩個數字的數組。
function sumAll(arr) { var sum =0; if(arr[0]<=arr[1]){ for(var i=arr[0];i<=arr[1];i++){ sum = sum + i; } }else{ for(var i=arr[1];i<=arr[0];i++){ sum = sum + i; } } return sum; } sumAll([1, 4]);
傳遞給你一個包含兩個數字的數組。返回這兩個數字和它們之間所有數字的和。最小的數字并非總在最前面
function diff(arr1, arr2) { var newArr = []; var lena = arr1.length; var lenb = arr2.length; for(var i = lena;i >= 0;i--){ for(var j = lenb;j >= 0;j--){ if(arr1[i] == arr2[j]){ arr1.splice(i,1); arr2.splice(j,1); } } } newArr = arr1.concat(arr2); return newArr; } diff([1, 2, 3, 5], [1, 2, 3, 4, 5]);
比較兩個數組,然后返回一個新數組,該數組的元素為兩個給定數組中所有獨有的數組元素。換言之,返回兩個數組的差異
function convert(num) { var nums = [1000,900,500,400,100,90,50,40,10,9,5,4,1]; var romans =["m","cm","d","cd","c","xc","l","xl","x","ix","v","iv","i"]; var str = ''; nums.forEach(function(item,index,array){ //forEach方法中的function回調支持3個參數,第1個是遍歷的數組內容;第2個是對應的數組索引,第3個是數組本身 while(num >= item){ str += romans[index]; num -= item; } }); return str.toUpperCase(); } convert(36);
將給定的數字轉換成羅馬數字。所有返回的 羅馬數字 都應該是大寫形式
function where(collection, source) { var arr = []; var porp=Object.keys(source); //Object.keys()方法返回一個數組傳入對象,返回屬性名 arr=collection.filter(function(obj){ for(var i=0; i<porp.length; i++){ if(obj[porp[i]]!==source[porp[i]]){ //判斷參數1中各個對象的porp屬性的值是否與參數二中的porp屬性值相等 return false; } } return true; }); return arr; } where([{ first: "Romeo", last: "Montague",a:"aaa" }, { first: "Mercutio", last: null,b:"bbb" }, { first: "Tybalt", last: "Capulet",d:"ddd",c:"ccc" }], { last: "Capulet", c:"ccc"});
寫一個 function遍歷一個對象數組(第一個參數)并返回一個包含相匹配的屬性-值對(第二個參數)的所有對象的數組。如果返回的數組中包含 source 對象的屬性-值對,那么此對象的每一個屬性-值對都必須存在于 collection 的對象中。
例如,如果第一個參數是 [{ first: "Romeo", last: "Montague" }, { first: "Mercutio", last: null }, { first: "Tybalt", last: "Capulet" }],第二個參數是 { last: "Capulet" },那么你必須從數組(第一個參數)返回其中的第三個對象,因為它包含了作為第二個參數傳遞的屬性-值對
function myReplace(str, before, after) { var len = before.length; if(before.charAt(0)>'A' && before.charAt(0)<'Z'){ after = after.charAt(0).toUpperCase()+after.slice(1); }else{ after = after.toLowerCase(); } str = str.replace(before,after); return str; } myReplace("A quick brown fox jumped over the lazy dog", "jumped", "Leaped");
使用給定的參數對句子執行一次查找和替換,然后返回新句子。
第一個參數是將要對其執行查找和替換的句子。
第二個參數是將被替換掉的單詞(替換前的單詞)。
以上是“js中級腳本算法有哪些”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。