如果该行不包含行注释,则返回null。
cutComment('let foo; // bar')
应该返回'bar',但它返回'let foo;//酒吧"。
function cutComment(comment) {
if (comment === null) {
return null;
} else {
return comment.replace(//*[sS]*?*/|//.*/g, '').trim();
}
}
console.log(cutComment('let foo; // bar'));
将正则表达式更改为匹配//
之后的任何内容
function cutComment(comment) {
if(!comment) return null
let match = comment.match(/(?<=//).+/)
if(match.length > 0 ) {
return match[0]
}else{
return null
}
}
console.log(cutComment('let foo; // bar'));
如果您想在前面的jshero示例的帮助下完成
let cutComment = (a) => {
let i = a.indexOf('//');
console.log('value of i'+i);
let str = a.substr(i+3);
console.log(str);
if (i === -1) {
return null;
}
return str;
}