wingmeng / front-end-quiz

前端小测试答题收集
0 stars 0 forks source link

JS基础测试38期:SVG 字符串处理 #31

Open wingmeng opened 4 years ago

wingmeng commented 4 years ago

题目:

image


我的回答:

第 1 题:

// 方法1:利用 RegExp 的零宽断言
str = str.replace(/fill="(?!none)[^"]+"/gi, '');

// 方法2:先用 RegExp 通用判断,然后 replace 函数进一步判断
str = str.replace(/fill="([^"]+)"/gi, function($0, $1) {
  return $1.toLowerCase() === 'none' ? $0 : '';
});

第 2 题:

接第 1 题

window.btoa(str)

第 3 题:

接第 1 题

var reg_encodeChars = new RegExp('["%#{}<>]', 'g');
str = str.replace(reg_encodeChars, encodeURIComponent);