如何修改为短语添加空隙的JS代码 实现首字母后每3位空隙显示字母
短语空隙替换实现代码
原代码是按全局字符下标奇偶性做替换,没有按单个单词独立计算位置,无法满足需求。修改后的实现逻辑为:先按空格拆分出所有独立单词,对每个单词单独处理后再拼接回完整字符串。
单个单词的处理规则:字符下标从0开始计数,当下标对4取余结果为0时保留原字符,其余字符替换为带hint类的下划线空隙,刚好符合「保留首字母、插入3位空隙、长度足够保留第5个字母再插3位空隙」的要求。
修改后的完整代码如下:
var str = document.getElementById("dropped-v").innerHTML; // 按空格拆分所有单词 var wordArr = str.split(' '); var processedArr = []; for (var w = 0; w < wordArr.length; w++) { var currentWord = wordArr[w]; var processedWord = ''; for (var i = 0; i < currentWord.length; i++) { // 下标为0、4、8...的位置保留原字符,其余替换为空隙 if (i % 4 === 0) { processedWord += currentWord[i]; } else { processedWord += '<span class="hint">_</span>'; } } processedArr.push(processedWord); } // 拼接后写入页面 document.getElementById("dropped-v").innerHTML = processedArr.join(' ');
可直接运行验证,输入I drove everywhere by car时输出结果为I d___e e___y___r_ b_ c__,完全匹配需求。如果后续需要调整空隙长度,仅需修改i % 4 === 0中的数值即可,比如要保留字符之间间隔4个空隙,就将4改为5。
内容的提问来源于stack exchange,提问作者Anton P
相关产品推荐
相关产品推荐

