猿问

谁能帮忙解释下这段JavaScript代码是什么意思?

function isHtml(source) {
var trimmed = source.replace(/^[ \t\n\r]+/, '');
var comment_mark = '<-' + '-';
return (trimmed && (trimmed.substring(0, 1) === '<' || trimmed.substring(0, 4) === comment_mark));
}

我知道代码的意思是判断source是否是html代码,但原理是什么呢?

慕雪6442864
浏览 396回答 2
2回答

沧海一幻觉

function isHtml(source) { var trimmed = source.replace(/^[ \t\n\r]+/, '');查找换行符 制表符 回车符,並且用“”替換 var comment_mark = '<-' + '-'; return (trimmed && (trimmed.substring(0, 1) === '<' || trimmed.substring(0, 4) === comment_mark));} trimmed.substring(0, 1) 判斷 第一位是否是'<' var comment_mark = '<-' + '-'; 應該是 var comment_mark = '<!-' + '-';吧 trimmed.substring(0, 4) === comment_mark判斷 0到4位,是否是‘《-’+‘-’,可能是注射的開頭如果trimmed不為空,並且 後面的條件,只要有一個成立。就返回true,

汪汪一只猫

原理就是,先将该段内容的回车替换掉,然后,再判断替换掉回车后的内容的第一个里是否含有<或<!--
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答