javascript使用标签包裹字符串代码实例

快乐打工仔 分类:实例代码

本章节分享一段代码实例,它实现了对指定字符使用特定标签包裹的功能。

下面就给给出此代码,并进行以下详细的分析。

代码实例如下:

<!DOCTYPE html>
<html> 
<head> 
<meta charset=" utf-8"> 
<meta name="author" content="http://www.pipipi.net/" /> 
<title>前端教程网</title> 
<style type="text/css">
.softwhy {
  color:red;
}
</style>
<script>
function wrap(tag) {
  var stag = '<' + tag + '>';
  var etag = '</' + tag.replace(/\s.*/, '') + '>';
  return function (x) {
    return stag + x + etag;
  }
}
window.onload = function () {
  var odiv = document.getElementById("antzone");
  var done = wrap("span class='softwhy'");
  odiv.innerHTML = done("pipipi.net");
}
</script>
</head>
<body>
<div id="antzone"></div>
</body>
</html>

上面的代码实现了我们的要求,下面介绍一下它的实现过程。

一.代码注释:

(1)function wrap(tag) {},此函数实现了包裹功能,参数是一个字符串,比如span或者带有其他属性设置。

(2).var stag = '<' + tag + '>',将标签名称包裹起来,比如span包裹成<span>。

(3).var etag = '</' + tag.replace(/\s.*/, '') + '>',此代码的功能就是去掉类似 class='softwhy'这样的东西。

(4).return function (x) {

  return stag + x + etag;

},返回一个函数,此函数会接受真正的字符串内容,并返回组合后的html字符串。

二.相关阅读:

(1).replace()方法可以参阅正则表达式replace()函数一章节。

(2).innerHTML可以参阅js innerHTML一章节。

一线大厂高级前端编写,前端初中阶面试题,帮助初学者应聘,需要联系微信:javadudu

回复

我来回复
  • 暂无回复内容