您好,登錄后才能下訂單哦!
1:在一串字符串中找出最長的字符
var st="The quick brown fox jumped bcaked jumped abscefg over the lazy dog 15625765675276";
function zifuchuanmax(str){
var arr=str.split(" ");//將字符串轉化為數組
var max=arr[0];
for(var i=1;i<arr.length;i++){
if(max.length<arr[i].length){
max=arr[i];
}
}
return max;
}
console.log(zifuchuanmax(st));//15625765675276
做題方法:首先利用split方法將字符串轉化為數組,定義一個變量,將數組的第一個元素賦值給這個變量,然后用for循環將數組中的元素與該變量依次比較,如果比該變量長,則將該元素賦值給變量
2:數組去重,將一個數組中相同的元素去掉
var arr = [1, 1, 2, 3, 4, 3, 5, 5, 6, 7, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9];
function szqc(array){
for(var i=0;i<array.length;i++){
var same=array[i];
for(var k=i+1;k<array.length;k++){
if(same==array[k]){
array.splice(k,1);//刪除元素之后,后面元素會自動補位,但下次循環系統會自動跳過該位置元素,所以補位元素就會被忽略
k--;//退回去會將補位元素不被忽略
}
}
}
return array;
}
console.log(szqc(arr));//?[1, 2, 3, 4, 5, 6, 7, 8, 9]
3:字符串翻轉
方法一:
var str = "abcdefghi";
console.log(str.split("").reverse().join(""));//ihgfedcba
將字符串轉化為數組,然后利用數組的方法reverse將數組翻轉,然后再用join()將其轉化為字符串
方法二:
var str = "abcdefghi";
function fanzhuan(str){
var dao="";//定義一個空字符串
for(var i=str.length-1;i>=0;i--){
dao+=str.charAt(i);
}
return dao;
}
console.log(fanzhuan(str));//ihgfedcba
在函數中定義一個新的空字符串,然后利用for循環,倒敘取出原字符串中元素,疊加
4:
統計一個字符串中出現最多的及其出現的次數給出一個字符串,統計出現次數最多的字母。如:“cccccccccasdfssaaasasasasaadddddddd”,
var str1 = "cccccccccasdfssaaasasasasaadddddddd";
function findChar(str) {
var ss = moveNumber(str.split(""));//先利用數組去重,將每個元素取出
/*[a,c,f,h]*/
var list = [];
for (var i = 0; i < ss.length; i++) {
var count = 0;
for (var index in str) {
if (ss[i] == str.charAt(index)) {
count++;
}//
}
list.push([ss[i], count]);
}
var tong = 1;
for (var i = 0; i < list.length; i++) {
if (list.length <= tong)break;
if (list[i][1] > list[i + 1][1]) {
list.splice(i + 1, 1);
i--;
}
else if (list[i][1] < list[i + 1][1]) {
list.splice(i, 1);
i--;
}
else {
tong++;
}
}
return function () {
var strlist = "";
for (var i = 0; i < list.length; i++) {
strlist += list[i][0] + "---" + list[i][1] + "個"
}
return strlist;
}
}
console.log(findChar(str1)());//c---9個a---9個d---9個
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。