问题标签 [self-modifying]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
452 浏览

javascript - node.js 中的自我修改代码,集群可以工作吗?

我问这个是因为我现在没有工具或时间来测试这个,但这个想法让我很困扰。当我有时间玩它时,我会自己回答这个问题。

在 node.js 中,require() 是如何工作的?它是否将所需的功能保留在内存中?还是它重新读取文件?

示例:

启动器.js

只要 self_modifying.js 有一个 start() 函数,它是 'main' 方法,它就可以通过修改它自己的源文件和 process.exit(0) 来自我更新,然后用它重新启动新代码?

0 投票
1 回答
579 浏览

reflection - 自修改代码和反射有什么区别?

自修改代码是“在执行时更改自己的指令”的代码。这通常不会在汇编语言或病毒之外完成。

反射只是程序动态访问其自己的命名空间的能力,以便动态引用函数、类和变量。根据这篇文章,反射不仅是自省(程序自我检查的能力),而且是代祷(程序修改自身的能力)。

那么,反射是指一种温和形式的自修改代码,其中只有变量/类/函数名称在指令中被“修改”吗?也就是说,与在自修改代码中修改整个指令本身的性质的能力相比,反射是一种更温和、更不“戏剧性”的修改形式。

我有这个区别对吗?

0 投票
3 回答
1004 浏览

scheme - 哪些 lisp 实现允许我在运行时修改代码?

Lisp 是谐音的,这意味着代码可以被视为数据。哪些实现允许我在运行时这样做?以下是我的意思的示例,用伪代码表示:

那应该重复输出“foo bar baz bar foo baz”。

0 投票
1 回答
1667 浏览

android - Android自修改代码-NDK

我正在尝试制作一个自我修改的代码库,但我已经满脑子都是,我有以下代码:

请帮助...我在Android上使用本机自修改代码作为我的起点,他们说了一些关于使用“-marm”和拇指位编译的内容...

我遇到的问题是,它只是崩溃了。我试过使用 cacheflush 功能,似乎没有帮助。我很茫然。

0 投票
1 回答
218 浏览

java - 写一个可以永久修改的字段或类(Java,ASM),没有数据库/文件

我想做这个:

在我的代码中,变量 X = 1。编译并运行代码。程序提示用户设置X,用户输入的X设置为2。下次我编译并运行我的代码时,我希望 X 在提示之前为 2。

您可以使用文件或数据库来读取/写入,但问题是我希望最终将上面的示例扩展到字段修改之外,以便能够从用户输入创建新字段或类。我询问 Java(使用 Eclipse)是因为我最熟悉它,尽管我在理解 ASM 集成及其使用方式方面遇到了麻烦。如果有人有像我这样的简单例子^^或者可以提供指导,我将不胜感激。要进行简单的字段修改,您是否可以使用 ASM 附加正在运行的类文件,或者您是否必须创建一个新的类文件(具有更新的字段)并删除原始文件?

0 投票
1 回答
52 浏览

javascript - 以编程方式决定在 javascript 中修改哪个样式属性

我有一种情况,根据变量值,我想修改 div 的 margin-top 或 margin-bottom 属性。

除了使用“if else”之外,还有什么方法可以这样做:

如果你明白我的意思,哈哈?

顺便说一句,我使用的是香草 JS 而不是 jQuery。

我不想使用 SetAttribute,因为我不想更改任何其他 div 样式。

非常感谢任何想法:

0 投票
3 回答
363 浏览

java - creating arrays on-demand in java

I consider myself an intermediate Java programmer having been at it for a year and a half and having some experience in other languages. However I have run into an issue that I feel I need an experts help on.

As I understand it arrays when created by java exist somewhat outside of where they were created i.e. if you create an array called s in one class and another called s in a second class then try to use both those classes as part of a program you will run into problems with them overwriting each other.

However this brings me to an interesting dilemma. What if one wanted to create a unique array on-demand for an infinite number of sets of user input. i.e. is it possible to have the user enter a string value for use as the array name or have a generic value that then gets a number or letter appended to it. This is more a theoretical issue (there being other ways to accomplish the same thing) but any insight would be greatly appreciated.

0 投票
2 回答
54 浏览

python - 如何使用 os.path 模块修改文件路径?

我的代码

我只是想通过 os.path.split() 更改文件名以将 UPPER 添加到文件名的开头。难道我做错了什么?

0 投票
1 回答
685 浏览

android - 我可以在 Android 中使用自我修改吗?

当我阅读谷歌播放政策时,我对这句话有一个疑问。

从 Google Play 下载的应用程序不得使用 Google Play 更新机制以外的任何方法修改、替换或更新自己的 APK 二进制代码。

这意味着开发人员不能使用自修改代码??

例如,当用户第一次运行我的应用程序时,我的应用程序会修改其二进制代码。

如果我使用它,我可以使用自修改代码上传我的应用程序吗?

0 投票
1 回答
321 浏览

java - Java 代码的自我修改有哪些可能性?

您能列出 Java 代码修改自身的可能性吗?将要使用它的场景是一个学习程序。作为对用户输入的响应,程序学习了一种新算法:

  1. 它在现有的代码库中查找类似的算法
  2. 如果代码库中没有类似的算法,程序只是添加一个新算法
  3. 如果存在类似的算法,则程序(可能在用户的帮助下)修改现有算法以同时满足旧目的和新目的

类似的问题存在自我修改 Java 中的代码,但当时可用的最新 Java 是 6,并且该问题被关闭为过于宽泛。