字符串经典笔试编程题:
function tuofengfa (name){
var arr = name.split('');//将整个字符串拆分成数组
//判断一下第一个是不是—
if (arr.indexOf('-')==0){
arr.splice(0,1);
}
//处理剩余的’-‘
for (var i =0 ;i< arr.length;i++){
if (arr[i]=='-'){
arr.splice(i,1);//删除这个"-",然后将下一个字母的首字母变成大写的
arr[i] = arr[i].toUpperCase();
}
}
return arr.join('');
}
function countLetterTimes(str) {
var length = str.length;
var res = {};
for (var i =0 ;i<length;i++){
if (str.charAt(i) in res){//如果第i个位置的字符在res已经有了,就加1,否为出现频率为1
res[str.charAt(i)]++;
} else {
res[str.charAt(i)]=1;
}
}
return res;
}
function formaDate(date,format) {
var year = date.getFullYear(),
month = date.getMonth()+1,
day = date.getDate(),
hour = date.getHours(),
minute = date.getMinutes(),
second = date.getSeconds(),
day = date.getDay(),
week =['日','一','二','三','四','五','六'];
function pad(n){
return n < 10 ? '0' + +n : n;//如果n小于10,则需要在n前面补位0
}
return format.replace(/yyyy/,year)
.replace(/yy/,pad(year % 100))
.replace(/MM/, pad(month))
.replace(/M/, month)
.replace(/dd/, pad(date))
.replace(/d/, date)
.replace(/HH/, pad(hour))
.replace(/H/, hour)
.replace(/hh/, pad(hour % 12))
.replace(/h/, hour % 12)
.replace(/mm/, pad(minute))
.replace(/m/, minute)
.replace(/ss/, pad(second))
.replace(/s/, second)
.replace(/w/, week[day]);
}
function isAvailableEmail(sEmail) {
var reg = /^[0-9-a-zA-Z_.-]+[@][0-9a-zA-Z_.-]+([.][a-zA-Z]+){1,2}$/;
if(reg.test(sEmail)){
return true;
}else{
return false;
}
}