如何衡量定义新字符串的JavaScript函数的数量

我正在浏览
this paper,其中他们使用HTMLUnit来“测量可用于定义新字符串的JavaScript函数的调用次数(例如substring和fromCharCode),以及字符串使用的数量(例如写入操作和评估电话).“

我是HTMLUnit的新手,我似乎无法弄清楚如何直接看到网站正在使用的功能并计算哪些是子串,eval等?怎么可以做到这一点?

最佳答案 最简单的方法是monkeypatch所有本机调用.例如:

const original = String.fromCharCode;
String.fromCharCode = function(...args) {
  console.log('creating new string');
  return original.apply(this, args);
}
console.log(String.fromCharCode(65, 66, 67));

这使您可以保留原始功能,同时仍然可以跟踪正在发生的事情.虽然更复杂,但同样可以应用(没有双关语)到eval和任何其他本地调用.
如果您还想监视任何DOM更改,可以使用MutationObservers.

点赞