猿问

评估/执行 Golang 代码/表达式,如 js 的 eval()

golang 上有类似 eval() 的方法吗?


评估/执行 JavaScript 代码/表达式:


var x = 10;

var y = 20;

var a = eval("x * y") + "<br>";

var b = eval("2 + 2") + "<br>";

var c = eval("x + 17") + "<br>";


var res = a + b + c;

res 的结果将是:


200

4

27

这在golang中可能吗?为什么?


当年话下
浏览 301回答 3
3回答

肥皂起泡泡

这在golang中可能吗?为什么?不,因为 golang 不是那种语言。它旨在编译,而不是解释,因此运行时不包含任何“字符串到代码”转换器,或者确实知道语法正确的程序是什么样的。请注意,在 Go 中与大多数其他编程语言一样,您可以编写自己的解释器,即一个接受字符串并导致相应计算完成的函数。Go 设计者的选择只是不将这种可疑的兴趣和安全性强加给不需要它的每个人。
随时随地看视频慕课网APP

相关分类

Go
我要回答