哪种形式更好?
list
还是这个?
b = Foo(a.data)
b.data.append(4)
print(a.data) # Outputs [1, 2, 3, 4]
print(b.data) # Outputs [1, 2, 3, 4]
我正在用手机写字,所以请原谅我...
答案 0 :(得分:1)
除了Arity,这些功能之间还有其他区别。
第一个函数将在第一个渲染时关闭arg
和arg2
,并在以后的每次重新渲染中使用这些参数。例如。
(def a 1)
(def b 2)
[my-func a b]
无论[:div '12']
或a
是否被更改,始终会导致b
第二个函数将在每个渲染上分别使用arg
和arg2
,并在参数更改时更新结果。
答案 1 :(得分:0)
我相信您的问题应该是哪个是正确的(第一个是正确的)。第二个有一个团结例外。根据您的用例,我希望定义并调用匿名函数以获取结果。考虑一下这个第一编辑:
(defn my-func [arg arg2]
((fn [] [:div (str arg arg2)])))