JSFiddle - React, Tailwind, and code Playground

by Espesen

JavaScript

// Tunnistaa tagin. strPos = tagin sijainti str-arrayssa

function whichTag(str, strPos) {
    var tag = '',
        i = 0, 
        breakLoop = false;
    
    //alert(str);
   // alert(str[strPos]);
    if (str[strPos] == '<') { 
        for (i = strPos + 1; i < str.length && !breakLoop; i++) {
            console.log("loop");
            if (str[i] == '>') {
                breakLoop = true;
            }
            else {
                if (str[i] != '/') {
                    tag += str[i];
                }
            // }
            }

        }
    }
    return tag;
}



//poistaa str:stä tagit, paitsi exception-parametrin osoittaman tagin
function removeTags(str, exception) {
    var i, j;
    var newStr = '';
    var tag, breakLoop = false;

    for (i = 0; i < str.length; i++) {
        if (whichTag(str, i) == exception) {    // jos löytyy säilytettävä tagi, talletetaan se ja hypätään yli
            for (j = i; !breakLoop; j++) {
                newStr += str[j];
                if (str[j] == '>') { 
                    breakLoop = true;
                    i = j + 1;
                }
            }
        }
        else {
            if (str[i] != '<' && str[i] != '>' && !tag) {
                newStr += str[i];
            }
            else {
                if (str[i] == '<') {
                    tag = true;
                }
                if (str[i] == '>') {
                    tag = false;
                }
            }
        }
    }
    return newStr;
}

function getSnippet(str, wordCount) {
    var newArray = str.split(' ', wordCount),
        i, newStr = '';
    for (i = 0; i < newArray.length; i++) {
        if (i !== 0) {
            newStr += ' ';
        }
        newStr += newArray[i];
        str = str.substr(newArray[i].length + 1);
    }
    if (str.length > 1) {
        newStr += '... <i>(jatkuu)</i>';
    }
    return newStr;
}



var str, newStr;
str = '<test><div>nönnönöö</test>';
console.log(str);
newStr =...