除了toString()之外,还有什么其他方法可以查看函数的主体

用户139643

我不希望第三方JS看到我公开的函数的代码,因此我已经覆盖了它们的.toString方法。

除了toString之外,还有其他方法可以公开功能代码吗?

谢谢!

一定的表现

自定义toString属性是不够的,因为Function.prototype.toString可以在函数上调用:

function foo() {
  console.log('foo implementation');
};
foo.toString = () => 'hidden';
console.log(Function.prototype.toString.call(foo));

当前,没有办法完全隐藏实现而不Function.prototype.toString事先进行覆盖,以至于没有人可以在以后引用和调用它(这是一个很奇怪的解决方案),例如:

Function.prototype.toString = () => 'nope';

但是即使在多领域环境中,这也不是万无一失的


最终可能有一种适当的方法可以通过实现隐藏提案来做到这一点它的语法与相似use strict,不同之处在于它将阻止函数的外部使用者看到内部任何内容。例如:

const y = () => {
  "hide source";
  // implement y here
  // nothing outside will be able to see its source code (easily)
};

该提案仅处于第2阶段,但有望最终成为官方语言。


话虽如此-这些技术可用于使第三方代码更难查看您正在执行的操作,但不能保证此操作-毕竟,任何关心的人都可以手动查看您的代码并查看这是怎么回事。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

除了alsactl存储之外,还有什么其他方法可以保存alsamixer设置吗?

除了使用 lambda 函数之外,还有其他方法可以将参数输入到任务中吗?

除了使用dto之外,还有什么其他方法可以显示来自两个实体的数据

除了使用nodetool status之外,还有其他方法可以获取cassandra hostid吗?

除了身份验证之外,还有其他方法可以区分用户吗?

除了:hover之外,还有其他方法可以更改字体颜色

除了DAvg之外,还有其他方法可以找到平均值吗?

除了 chroot jail 之外,还有其他方法可以限制 SSH 用户吗?

除了Azure门户之外,是否有其他方法可以查看Application Insights日志?

除了.each()函数之外,还有没有其他方法可以使用jQuery将输入字段中的信息收集到数组中?

除了eval之外,还有其他方法可以防止我的perl脚本因错误而终止

除了使用多行var之外,还有其他方法可以存储HTML代码块吗?

除了使用表格之外,还有其他方法可以在 EXCEL VBA 中存储文件夹路径吗?

除了意图之外,还有其他方法可以跨Android Studio中的活动发送数据

Python 2.7.10:除了使用 len() 之外,还有其他方法可以检查输入是否为空

除了使用Xpath之外,还有其他方法吗?

Docker工具箱:除了从“ C:\ Users” Windows之外,还有其他方法可以挂载其他文件夹吗?

斯威夫特:除了单例以外,还有什么其他方式可以存储currentUser?

除了DataBinding之外,还有其他方法可以在Android Studio中多次使用具有不同属性的相同布局吗?

在 Typescript 中,除了为特定值提供 `as const` 断言之外,还有没有其他方法可以声明文字类型?

除了迭代器对象以外,还有哪些其他方法可以迭代向量?

除了 PHPUnit,还有其他方法可以测试 Symfony 应用程序吗?

除了Combine的@Published之外,是否还有其他方法可以在发生值更改之前而不是之前发出信号更改?

除了sleep()之外,还有其他方法可以使AutoIt脚本在执行下一个功能之前等待吗?

除了文本文件或csv文件之外,还有其他方法可以将数据存储在c中吗?

“预期在箭头函数结束时返回一个值” - 除了过滤器之外,还有其他方法可以做到这一点吗?

除了将位复制到ANativeWindow缓冲区之外,还有其他方法吗?

除了使用SELECT FOR UPDATE在oracle中进行并发编辑之外,还有其他方法吗?

除了使用BeautifulSoup和Scrapy之外,还有其他方法无法刮掉不可刮擦的网站吗?