问答题
1,找到数组 [-1,-2,1,10,4,5,8] 中的最大值,至少写出两种方法?
var arr = [-1, -2, 1, 10, 4, 5, 8];
// 第一种
var max1 = Math.max.apply(null, arr);
// 第二种
var max2 = arr.sort(function(a, b){
return b - a;
})[0];
// 第三种
var max3 = -Infinity;
for (var i = 0; i < arr.length; i++) {
if (max3 < arr[i]) {
max3 = arr[i];
}
}
//第四种
var arr=[-1, -2, 1, 10, 4, 5, 8];
var max=arr[0];
var temp;
for(var i=0;i<arr.length;i++){
if(max<arr[i]){
var temp;
temp=max;
max=arr[i];
arr[i]=temp;
}
}
console.log(max);
2,封装一个函数,将字符串 “miao-wei-ke-tang” 从第二个单词开始首字母大写,然后拼成字符串 miaoWeiKeTang,并返回。(注意:封装成一个函数)
var str = 'miao-wei-ke-tang';
function toTuoFeng(str) {
var arrStr = str.split('-');
for (var i = 1; i < arrStr.length; i++) {
arrStr[i] = arrStr[i].substr(0, 1).toUpperCase() + arrStr[i].substr(1);
}
return arrStr.join('');
}
console.log(toTuoFeng(str));
3 , 写一个方法,找出字符串 “abcabcabcabcabcabda” 中 “ab” 出现的次数和位置。
var str = 'abcabcabcabcabcabda';
var arr = [];
var n = 0;
while(str.indexOf('ab',n) != -1 && n < str.length) {
arr.push(str.indexOf('ab', n));
n = str.indexOf('ab', n) + 2;
}
console.log(arr);