簡體   English   中英

計算字符串中單詞的字母

[英]count the letters of the words within a string

因此,我是JavaScript的新手-似乎找不到解決此簡單挑戰的解決方案。

如果我將以下內容解析為str = "apple ban"

它必須以array = ["apple 5", "ban 3"]返回以下內容

基本上-計算識別單詞,計算每個單詞中的字母數量,每當出現空格時就將字符串分割開,並將其推入一個數組,每個單詞分開,每個單詞的長度都緊挨着它。

到目前為止,這是我的工作-為什么要脫離基地。

function addLength(str){

  var array = [];

  array.push(str.split(/\s+/).length);

  return array;
}

我瀏覽了過去關於SoF的問題,並試圖做出自己的結論/解決方案。 這次似乎並非如此。

這樣嘗試

var str = "apple ban";
var strArr = str.split(" ").map(x => {
  return x + " " + x.length;
});
console.log(strArr);

DEMO

 var name = "boss"; var obj = {}; var newArray = []; for (var i = 0; i < name.length; i++) { var count = 0; for (var j = 0; j < name.length; j++) { if (name.charAt(i) === name.charAt(j)) { count++; } } var result = name[i] + "-" + count; obj = Object.assign(result); newArray.push(obj); } console.log(newArray); 

輸出:

[ "b-1", "o-1", "s-2", "s-2" ]

 var str = "annnu"; var arr = str.split(""); var count = 1; var map1 = new Map(); for (let i = 0; i < arr.length; i++) { if (map1.has(arr[i])) { var k = map1.get(arr[i]); map1.set(arr[i], ++k); } else { map1.set(arr[i], 1); } } for (var [key, value] of map1) { console.log(key + ' = ' + value); } 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM