问题标签 [defn]

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 投票
1 回答
170 浏览

macros - 带有函数定义的宏,包括 set! 不在 Clojurescript 中工作

我正在尝试定义一个应该执行以下操作的宏:

  • 将“变量”与初始值绑定
  • 根据变量名称创建名称的 setter 方法

我在 clojure 文件中定义了以下内容:

当像这样从 clojurescript 调用时(cmacros 是命名空间别名):

我正确地理解了“生产”和“生产-其他”的定义,“生产-11”功能有效(并将生产价值设置为 11),但最后一个不起作用。我在不同的浏览器中得到不同的错误。Chrome 显示“Uncaught SyntaxError: Unexpected token .”。Firefox “SyntaxError: missing ) after 形式参数”。

Firefox 指出的有问题的 javascript 代码如下所示:

尽管我不是 js 专家,但似乎所有括号都是正确的。怎么了?为什么 -11 定义有效但 -set 无效?

0 投票
1 回答
436 浏览

clojure - 在 defn 宏中,函数名称前以插入符号开头的参数是什么意思?

在函数定义中:

函数定义中的^boolean部分是什么意思?它只是扩展元数据并表示返回类型,还是有更深层次的含义?换句话说,它是否比简单地使代码更具自我描述性更有价值?

0 投票
3 回答
153 浏览

clojure - 位置破坏函数

我是clojure的新手,我试图尽可能多地理解,但文档太模糊了

当你有一个功能

我的理解是该函数采用矢量图,但只想访问第二个参数指定的键,对{:keys.....吗?

那么我要传递多少个参数给这个函数呢?1 还是 2?

它是一个向量吗?{:kind 1 :dog 2} 还是向量键值 (:kind {....})?

0 投票
2 回答
72 浏览

dictionary - 返回函数内部未作为 nil 传递的 args

如果我们将上述函数调用为

它返回

我希望有

0 投票
1 回答
48 浏览

function - Clojure - 如何将列表和函数放入 defn 函数中

我是新手,正在做一些练习。如何将def带有句子列表和随机函数的函数放入defn函数中?这是如何运作的?

(def list["test1", "test2", "test3"])- 工作正常 (rand-nth list)- 工作正常

如何将其放入函数中defn

感谢帮助。