如何在clojure中从字符映射到数字?
就像我有一个功能:
(defn letter [c]
(str (last c)))
Run Code Online (Sandbox Code Playgroud)
如果我输入:user =>(字母“4R”),那么我希望输出为 R。如何将字符串值“R”映射到 R?
(def a (edn/read-string "(+ 1 3)"))
; => (+ 1 3)
Run Code Online (Sandbox Code Playgroud)
如何评估此结果列表?
(type (first a))
; => cljs.core/Symbol
(= (first a) '+)
; => true
Run Code Online (Sandbox Code Playgroud)
我想更一般地我将如何从符号->函数中得到。这是Clojure的正常做法吗?我似乎找不到任何东西。也许我没有搜索正确的术语。
我需要将此Javascript代码转换为ClojureScript。我在使用this关键字时遇到了麻烦。
这是我的JS:
if (!String.prototype.startsWith) {
String.prototype.startsWith = function(searchString, position) {
position = position || 0;
return this.indexOf(searchString, position) === position;
};
}
Run Code Online (Sandbox Code Playgroud)
我Object doesn't support property or method 'startsWith'在高级模式下遇到了Google Closure编译器错误,因此需要添加此代码。(IE 11)
我是 clojure 的新手,正在实施 Kadane 的算法。代码的质量非常糟糕,这很好,因为我想先编写糟糕的代码,然后逐渐改进。不知何故,我的 for 循环没有执行。请指导
我尝试了各种印刷组合但失败了所以我来找你
(defn max-contigous-sub-array [list]
(let [local-sum (atom (first list))
global-sum (atom (first list))]
(doseq [x (rest list)]
(do
(reset! local-sum (max x (+ @local-sum x)))
(if (> @local-sum @global-sum)
(reset! global-sum @local-sum))))
@global-sum))
Run Code Online (Sandbox Code Playgroud) 我有通过 clojure 创建的文件
frontendapp.jar
backendapp.jar
Run Code Online (Sandbox Code Playgroud)
并取一个环境变量, APP_PORT
我想了解的是如何将变量传递给 jar 文件,以便它们与变量 APP_PORT 一起运行?
我的假设是这样的
java -jar frontenapp.jar APP_PORT=8080
Run Code Online (Sandbox Code Playgroud)
我的假设正确吗?
如果问题不好,我很抱歉,这是我第一次部署 clojure 应用程序
java clojure clojure-contrib clojure-java-interop clojurescript
如果我有一张看起来像的地图:
{:a 1 :b 2 :c 3}
Run Code Online (Sandbox Code Playgroud)
如何将其转换为向量,例如:
[:a 1 :b 2 :c 3]
Run Code Online (Sandbox Code Playgroud) 所以我只使用了几天的 clojurescript 和试剂,我正在尝试创建一个简单的个人网站。我使用 shadow-clj 设置项目以进行热重载。
首先,我导入了所需的 material-ui 东西:
(:require [reagent-material-ui.icons.home :refer [home]]
[reagent-material-ui.icons.apps :refer [apps]]
[reagent-material-ui.core.list :refer [list]]
[reagent-material-ui.core.list-item :refer [list-item]]
[reagent-material-ui.core.list-item-icon :refer [list-item-icon]]
[reagent-material-ui.core-list-item-text :refer [list-item-text]])
Run Code Online (Sandbox Code Playgroud)
然后我在导航栏中定义了我想要的项目:
(def menu-items '({:list-icon [home] :list-text "Home"}
{:list-icon [apps] :list-text "Portfolio"}))
Run Code Online (Sandbox Code Playgroud)
然后我尝试遍历menu-items并将它们放入试剂组件中:
(defn navbar []
[list
(map (fn [item]
[list-item
[list-item-icon (:list-icon item)]
[list-item-text (:list-text item)]])
menu-items)])
Run Code Online (Sandbox Code Playgroud)
现在,当我重新加载代码时,只显示文本:list-text但没有图标。我已经尝试在没有任何循环的情况下显示图标,并且效果很好。
控制台没有错误输出只有两个警告:
Warning: Every element in a seq should have a unique :key: ([#object[reagent.impl.template.NativeWrapper] [#object[reagent.impl.template.NativeWrapper] [home]] [#object[reagent.impl.template.NativeWrapper] "Home"]] [#object[reagent.impl.template.NativeWrapper] [#object[reagent.impl.template.NativeWrapper] [apps]] [#object[reagent.impl.template.NativeWrapper] …Run Code Online (Sandbox Code Playgroud) 如何在集合上循环但从该集合中的不同指定点开始?也就是说,如果我有 [“a” “b” “c” “d” “e”] 能够通过指定从第三个位置开始(或者可能是第二个,如果它需要被零索引)?
例如,我有一个该项目的index.html。
我希望每当我构建项目时,它都会自动复制到公共项目中。有没有内置的方法来实现这一点?
我正在尝试按值对地图进行排序(不区分大小写)。但似乎 clojure 排序功能区分大小写。见下面的例子,
cljs.user=> (sort {:1 "A" :2 "Z" :3 "i"})
([:1 "A"] [:2 "Z"] [:3 "i"])
cljs.user=> (reverse (sort {:1 "A" :2 "Z" :3 "i"}))
([:3 "i"] [:2 "Z"] [:1 "A"])
Run Code Online (Sandbox Code Playgroud)
任何人都可以为我建议一个解决方案,我如何通过不区分大小写的方式在 clojure 中排序?
我想查找我的字符串列表中的任何字符串中是否有子字符串。我有一个像'(“hi”“hey”“hello”)这样的列表。使用“some”我可以找到值“hi”是否在此列表中。但是我怎样才能找到列表中的至少一个字符串中是否只有“h”呢?
clojurescript ×11
clojure ×8
edn ×1
eval ×1
java ×1
javascript ×1
material-ui ×1
object ×1
reagent ×1
shadow-cljs ×1