用双引号

时间:2016-01-11 09:46:39

标签: node.js couchdb

也许是一个奇怪的请求,但我正在使用CouchDB视图,这需要一个字符串被双引号括起来。

这有效:

  

?键= [ “测试”, “234”]

这不起作用:

  

?键= [ '测试', '234']

所以在我的NodeJS应用程序中,我正在尝试构建正确的密钥以传递给CouchDB

var key1 = "test";
var key2 = "234";

{ key: [key1, key2] }

这总是出现

{ key: [ 'test', '234' ] }

有没有有效的方法来获得我想要的输出? (双引号)

4 个答案:

答案 0 :(得分:5)

CouchDB本身不需要双引号;它需要 JSON编码参数。

这对你来说是个好消息!只需在JavaScript中构建您的密钥:

var key = [
    'test',
    '234'
]

然后在发送到CouchDB之前对其进行JSON编码:

key = JSON.stringify(key) // Result: the string '["test","234"]'

答案 1 :(得分:1)

目前尚不清楚是否要使用键或表示对象的字符串传递对象。 如果你传递一个字符串,为什么不使用使用双引号的JSON.stringify?

var key1 = "test";
var key2 = "234";
JSON.stringify({key: [key1, keys]})

这将产生: {“key”:[“test”,“234”]}

答案 2 :(得分:0)

我还没有对此进行测试,但我想你可以使用String.fromCharCode(34)作为双引号,而不是直接输入它们。所以

var key1 = String.fromCharCode(34)+ test + String.fromCharCode(34);

甚至

var doubleQuote = String.fromCharCode(34); var key1 = doubleQuote + test + doubleQuote;

答案 3 :(得分:0)

您可以在node.js应用

中尝试此操作
var key1 = '"test"';
var key2 = '"234"';

这将导致:

{ 
   key: 
   [ 
      '"test"', 
      '"234"' 
   ] 
}

我没有使用CouchDB,也许这可以解决你的问题。