JSFiddle - React, Tailwind, and code Playground
by fliptheweb
HTML
<textarea id="textarea">Во саду ли в огороде бегала собачка хвост подняла навоняла вот и вся задачка собачка задачка хвост огород огород огород огород выаываыва</textarea>
<a href="#">сгенерировать ключевики</a>
<h3>Ключевики</h3>
<p id="keywords"></p>
CSS
textarea{
width:100%;
}
JavaScript
$("a").on("click", function(e){
e.preventDefault;
$("p").text(getKeywords($("textarea").text()));
});
function getKeywords(textarea){
textarea = textarea.replace("\f\r\n","").split(" ");
var keywords = [];
for (i = 1; i < textarea.length; i++){
//trim string
var keyword = textarea[i].toString().replace(/(^\s+)|(\s+$)/g, "").toLowerCase();
if(keyword){
//FIXIT function for count num of keywords,
// create obj (keyword, num) and push in array
var keywordExist = false;
for (j = 0; j < keywords.length; j++){
if(keyword == keywords[j]["keyword"]){
keywords[j]["num"]++;
keywordExist = true;
break;
}
}
if(!keywordExist){
//redefine toString function for array join
keywords.push({
"keyword":keyword,
"num":1,
"toString": function(){return this.keyword;}
});
}
}
}
keywords = keywords.sort(function(a,b){return b.num - a.num;}).join(", ");
keywords[0] = keywords[0].toUpperCase();
return keywords;
}