Javascript中最后一次求值的表达式
Last evaluated expression in Javascript
是否有可能在Javascript中获得最后评估表达式的结果?例如:
var a = 3;
var b = 5;
a * b;
console.log(lastEvaluatedExpression); // should print 15
它会像eval()一样返回最后求值的表达式,但是我不能使用eval()
在JavaScript中没有标准的、具体化的"最后求值表达式的结果"的概念。实际上并没有太多的语言有这样的东西。各种JavaScript repl可能会提供一些类似的功能,但这是特定于这些repl的。
——package。json -
"dependencies": {
"stream-buffers": "^3.0.1"
},
——main.js——
const streamBuffers = require('stream-buffers');
const repl = require('repl');
const reader = new streamBuffers.ReadableStreamBuffer();
const writer = new streamBuffers.WritableStreamBuffer();
const r = repl.start({
input: reader,
output: writer,
writer: function (output) {
console.log(output)
return output;
}
});
reader.push(`
var a = 3;
var b = 5;
a * b;`);
reader.stop();
——output——
undefined
undefined
15
见:https://nodejs.org/api/repl.html
这在javascript中不可能。目前我能想到的唯一方法(不需要编写新的解释器)就是使用Coffeescript。Coffeescript自动返回最后一个表达式。
http://coffeescript.org/http://coffeescript.org/extras/coffee-script.js包括Coffeescript.compile
、Coffeescript.eval
等功能
对于最后求值的表达式没有标准调用。不,你需要存储值。例如,你可以这样做:
var a = 3;
var b = 5;
var c = a * b;
var consoleResult = c.toString();
console.log(consoleResult); // should print 15
//Then make your program logic change the value of consoleResult, as needed.
相关文章:
- Javascript匹配以从URL中删除部分文件名-替换最后一次出现的内容
- 正在查找最后一次出现的文本
- JavaScript只有在最后一次被调用时才运行函数
- 字符串拆分并获取第一次和最后一次出现
- Regex-从第二次出现到最后一次出现
- 我如何可以忽略以前的选择,只写最后一次选择
- 异步mongodb更新循环中最后一次迭代后的重定向
- 链接超时会导致最后一次超时被拒绝
- Javascript 正则表达式匹配一次
- 变量在循环的最后一次迭代中变为未定义
- 将匹配字符串中最后一次出现的点的正则表达式
- 删除/隐藏链接后最后一次出现的字符串
- 如何获取单击元素的类值,并使用此值在 jquery 中最后一次出现此类之后放置一段 html 代码
- 如何在最后一次出现某个字符后获取 url 中的参数
- 如何使用Javascript正则表达式从可能的单词列表中获取单词的最后一次出现
- 如何使用正则表达式获取[0]的最后一次出现
- JavaScript在正则表达式中标记最后一次出现
- 获取函数内最后一次求值的表达式
- Javascript中最后一次求值的表达式
- Javascript 正则表达式,用于匹配从最后一次出现的模式到跨多行的不同模式