我使用下面的代码正常工作,现在我想为它添加一些值Dest并且它不起作用,
这是有效的
var str = '\
BASH=/bin/sh\n
CF_INSTANCE_P=\'[{external:500,internal:501}]\'\n\
COLUMNS=80'
var obj = {};
str.split('\n').forEach(function (el) {
var spl = el.split('=');
obj[spl[0]] = spl[1];
});
console.log(obj)
现在我需要将以下内容添加到str(在COLUMNS = 80下),并且它不起作用(我只看到dest条目而不是所有其他条目,我知道它的原因是' =&# 39;哪个不存在,但如何使用所有这些secnarios)?我需要将其添加到 obj,就像所有其他值一样
dest='[
{"name":"satr", "url":"https://sd.com", "proxyHost":"pu.corp", "proxyPort":"8080"}
]'
更新
这里的str只是为了演示我从形式上看它是readFile as-is 而我无法改变它......
答案 0 :(得分:0)
这个怎么样?
var str = '\
BASH=/bin/sh\n\
BASH_ARGC=()\n\
BASH_ARGV=()\n\
BASH_LINENO=([0]="0")\n\
BASH_VERSINFO=([0]="3" [1]="2" [2]="51" [3]="1" [4]="release" )\n\
BASH_VERSION=\'3.2.2(1)-release\'\n\
CF_INSTANCE_P=\'[{external:500,internal:501}]\'\n\
COLUMNS=80\'\n\
DEST=\'[{"name":"satr", "url":"https://sd.com", "proxyHost":"pu.corp", "proxyPort":"8080"}]'
var obj = {};
str.split('\n').forEach(function (el) {
var spl = el.split('=');
obj[spl[0]] = spl[1];
});
console.log(obj)
答案 1 :(得分:0)
或者您可以在解析字符串之后添加它:
obj.dest = [{"name":"satr", "url":"https://sd.com", "proxyHost":"pu.corp", "proxyPort":"8080"}];