如何区分replaceWith()和replaceAll()方法

作者:活力源 | 创建时间: 2023-08-11
波利亚在其名著《怎样解题》认为回到定义中去是一项重要的思维活动,其实我们也可以运用此种思维策略对软件的思维活动中去,让我们回到replaceWith()和replaceAll()方法定义中去。...
如何区分replaceWith()和replaceAll()方法

操作方法

要回到定义中去,我们可以利用例子来理解概念的内涵 比如有一html代码如下: <div> <p>第一段</p> <p>第二段</p> <p>第三段</p> </div> 现在我们要看看replaceWith()的定义 用提供的内容替换集合中所有匹配的元素并且返回被删除元素的集合 看不明白 现在我们写入js代码: $("p:eq(1)").replaceWith('<a style="color:red">替换第二段的内容</a>') 最终html代码变成如下: <div> <p>第一段</p> <a style="color:red">替换第二段的内容</a> <p>第三段</p> </div> 再回到定义中去 提供的内容是什么?<a style="color:red">替换第二段的内容</a> 集合中所有匹配的元素是什么?<p>第二段</p> 用提供的内容替换集合中所有匹配的元素并且返回被删除元素的集合? 不就是把p换成a这么简单嘛

再看看.replaceAll( target ) 的定义: 用集合的匹配元素替换每个目标元素 再看js部分的写法: $('<a style="color:red">替换第二段的内容</a>').replaceAll('p:eq(1)') 结果如下: <div> <p>第一段</p> <a style="color:red">替换第二段的内容</a> <p>第三段</p> </div> 集合的匹配元素是什么?<a style="color:red">替换第二段的内容</a> 每个目标元素是什么?<p>第二段</p> 那么它与replaceWith()区别在哪里? 位置不同嘛。 其实这就象我们用被造句和不用被造句的道理是一样的 今天,老师批评了我。 今天,我被老师批评了。 虽然句子的语法结构变了,意思却是一样。

点击展开全文

更多推荐