1. Sum All Numbers in a Range
function sumAll(arr) {
var min,max;
if (arr[0]>arr[1]) {
max = arr[0];
min = arr[1];
}else{
max = arr[1];
min = arr[0];
}
var sum = 0;
for (var i = min; i <= max ; i++) {
sum+=i;
}
return sum;
}
思路:
1.判斷兩個(gè)數(shù)大小,大的賦給max,小的賦給min
2.for循環(huán)讹蘑,將min設(shè)為初始值末盔,max設(shè)為循環(huán)邊界值,求和
3.返回求和值
2. Diff Two Arrays
function diffArray(arr1, arr2) {
var newArr = arr1.concat(arr2);
newArr.sort();
for (var i = 0; i < newArr.length; i++) {
if (newArr[i]===newArr[i+1]) {
delete newArr[i];
delete newArr[i+1];
}
}
return newArr.filter(Boolean);
}
思路:
1.將兩個(gè)數(shù)組連接成一個(gè)數(shù)組
2.對(duì)數(shù)組元素進(jìn)行排序
3.判斷相鄰的數(shù)是否相同座慰,如果相同陨舱,則把這倆數(shù)全部刪除
4.過濾所有真值,并將其返回版仔。
5. Search and Replace
function myReplace(str, before, after) {
var beforeFirstLetter = before.substr(0,1); //截取之前字符串的首位
var newstr;
var flag = /[A-Z]/.test(beforeFirstLetter);
if(!flag){
newstr = str.replace(before,after);
return newstr;
}else{
var afterFirstLetter = after.substr(0,1).toUpperCase(); //將替換單詞首字母取出來大寫
var sliced = after.split('').slice(1).join(''); //將除過首字母之外的部分切割出來
newafter = afterFirstLetter + sliced; //拼接首字母大寫的單詞
newstr = str.replace(before,newafter);
return newstr;
}
}
思路:
1.判斷要替換的單詞首字母是否為大寫游盲。
2.不是的話,直接替換蛮粮。
3.是大寫的將需要替換的單詞首字母變成大寫然后替換益缎。
21.Arguments Optional
我在這道題上卡的時(shí)間比較長,因?yàn)槔斫忾]包花費(fèi)了一些時(shí)間然想,看了好些博客和YouTube上的教程莺奔,自己也跟著教程敲了一些代碼,理解的差不多重新回來看題变泄,思路清晰了不少令哟。