用双引号replace.toString()单引号
也许一个奇怪的请求,但我使用CouchDB的意见,这需要一个string被双引号包围。
这工作:
?键= [ “testing”, “234”]
这不会工作:
?键= [ 'testing', '234']
所以在我的NodeJS应用程序中,我试图build立正确的密钥传递给CouchDB
var key1 = "test"; var key2 = "234"; { key: [key1, key2] }
这总是出来
{ key: [ 'test', '234' ] }
有没有什么有效的方法来获得我想要的结果? (双引号)
CouchDB本身不需要双引号; 它需要JSON编码的参数。
对你来说这是个好消息! 只要你喜欢在JavaScript中build立你的密钥:
var key = [ 'test', '234' ]
然后在发送到CouchDB之前进行JSON编码:
key = JSON.stringify(key) // Result: the string '["test","234"]'
目前还不清楚你是否想用键或代表对象的string传递一个对象。 如果你传递一个string,为什么不使用使用双引号的JSON.stringify?
var key1 = "test"; var key2 = "234"; JSON.stringify({key: [key1, keys]})
这将产生:{“key”:[“test”,“234”]}
我没有testing过这个,但是我想你可以使用String.fromCharCode(34)作为双引号,而不是直接input它们。 所以
var key1 = String.fromCharCode(34)+ test + String.fromCharCode(34);
甚至
var doubleQuote = String.fromCharCode(34); var key1 = doubleQuote + test + doubleQuote;
你可以在你的node.js应用程序中试试这个
var key1 = '"test"'; var key2 = '"234"';
这将导致:
{ key: [ '"test"', '"234"' ] }
我没有使用CouchDB,也许这将解决您的问题。