【发布时间】:2018-11-02 12:16:40
【问题描述】:
我有这个功能:
function read(x) {
console.log("You typed: " + x);
}
如果我在控制台中运行read("Hello"),我会得到:
你输入:你好;
但如果我运行read(Hello),我会得到:
Uncaught ReferenceError: Hello is not defined
我是这样修改函数的:
function read(x) {
console.log("You typed: " + x.toString());
}
但没有成功。
因此,我想将函数参数视为字符串,而不管用户如何输入它。我该如何做到这一点?
【问题讨论】:
-
Nvm,sugar.js 不是我想象的那样。可能有一些可用的预处理器可以满足您的需求,但同样,为了这点好处,工作量太大了。
-
应该注意的是,他们的要求并不像某些人所暗示的那样完全荒谬;它只是在 JS 中不可用。在 Clojure 中这很简单:
(defmacro read [s] `(println ~(str s)))、(read hello)打印hello,但这是因为 Clojure 支持宏。
标签: javascript string parameter-passing