您好,登錄后才能下訂單哦!
這篇文章主要介紹js中級(jí)腳本算法有哪些,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
摘要: 區(qū)間求值算法 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]); 傳遞給你一個(gè)包含兩個(gè)數(shù)字的數(shù)組。
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]);
傳遞給你一個(gè)包含兩個(gè)數(shù)字的數(shù)組。返回這兩個(gè)數(shù)字和它們之間所有數(shù)字的和。最小的數(shù)字并非總在最前面
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]);
比較兩個(gè)數(shù)組,然后返回一個(gè)新數(shù)組,該數(shù)組的元素為兩個(gè)給定數(shù)組中所有獨(dú)有的數(shù)組元素。換言之,返回兩個(gè)數(shù)組的差異
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回調(diào)支持3個(gè)參數(shù),第1個(gè)是遍歷的數(shù)組內(nèi)容;第2個(gè)是對(duì)應(yīng)的數(shù)組索引,第3個(gè)是數(shù)組本身 while(num >= item){ str += romans[index]; num -= item; } }); return str.toUpperCase(); } convert(36);
將給定的數(shù)字轉(zhuǎn)換成羅馬數(shù)字。所有返回的 羅馬數(shù)字 都應(yīng)該是大寫形式
function where(collection, source) { var arr = []; var porp=Object.keys(source); //Object.keys()方法返回一個(gè)數(shù)組傳入對(duì)象,返回屬性名 arr=collection.filter(function(obj){ for(var i=0; i<porp.length; i++){ if(obj[porp[i]]!==source[porp[i]]){ //判斷參數(shù)1中各個(gè)對(duì)象的porp屬性的值是否與參數(shù)二中的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"});
寫一個(gè) function遍歷一個(gè)對(duì)象數(shù)組(第一個(gè)參數(shù))并返回一個(gè)包含相匹配的屬性-值對(duì)(第二個(gè)參數(shù))的所有對(duì)象的數(shù)組。如果返回的數(shù)組中包含 source 對(duì)象的屬性-值對(duì),那么此對(duì)象的每一個(gè)屬性-值對(duì)都必須存在于 collection 的對(duì)象中。
例如,如果第一個(gè)參數(shù)是 [{ first: "Romeo", last: "Montague" }, { first: "Mercutio", last: null }, { first: "Tybalt", last: "Capulet" }],第二個(gè)參數(shù)是 { last: "Capulet" },那么你必須從數(shù)組(第一個(gè)參數(shù))返回其中的第三個(gè)對(duì)象,因?yàn)樗俗鳛榈诙€(gè)參數(shù)傳遞的屬性-值對(duì)
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");
使用給定的參數(shù)對(duì)句子執(zhí)行一次查找和替換,然后返回新句子。
第一個(gè)參數(shù)是將要對(duì)其執(zhí)行查找和替換的句子。
第二個(gè)參數(shù)是將被替換掉的單詞(替換前的單詞)。
以上是“js中級(jí)腳本算法有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。