省略我如何直接输入哈希图? Hash的阅读语法怎么样?

问题描述 投票:1回答:2

我想直接输入像javascript这样的哈希:

hash = {
  key1: 'value1',
  key2: 'value2',
  key3: 'value3'
}

有时是为了提高可读性,

我在elisp中尝试过:

 #s(:a 1 :b 2)

但要出错。

emacs elisp
2个回答
0
投票

我发现我可以做到这一点,并且有效。

 #s(hash-table data (
   :key1   "value1"
   :key2   "value2"))

0
投票

来自http://ergoemacs.org/emacs/elisp_hash_table.html

(setq myHash
  #s(hash-table
     size 30
     test equal
     data (
           "joe" 3
           "jane" 9
           "liz" 5 )))



;; test
(gethash "joe" myHash ) ; 3

语录::test'equal是指定用来测试密钥存在的函数。

我还没有看到尺寸,但是假设它是最大尺寸,我尝试了一下却没有,它对我有用(我只是需要静态的)。

© www.soinside.com 2019 - 2024. All rights reserved.