如何解决JavaScript 向对象添加新属性以双引号显示
我想向我的对象添加一个新属性。但是它在双引号中添加了属性,并且对象无法很好地初始化。 这是我在 JSFiddle 中的代码。
提前感谢您的任何建议。
var chart;
function myFunction(incoming_data) {
var lcl = JSON.parse(JSON.stringify(incoming_data));
var headertxt = lcl.title_dynamic;
console.log(headertxt);
var chartCfg = {
zoomEnabled: true,axisX: {
title: "chart updates every 2 secs",crosshair: {
enabled: true,snapToDataPoint: true
}
},axisY: {
crosshair: {
enabled: true,snapToDataPoint: true,valueFormatString: "#,##0"
}
},toolTip: {
shared: true
},legend: {
dockInsidePlotArea: true,verticalAlign: "top",horizontalAlign: "right"
}
};
chart = new CanvasJS.Chart("chart-container",chartCfg);
chart.options.title = headertxt;
console.log(chart.options);
chart.render();
}
var json_val = {"title_dynamic":"{text:\"Header Tay\"}"};
myFunction(json_val);
<div id="chart-container" style="height: 300px; width: 100%;">
</div>
<div style="margin-top:16px;color:dimgrey;font-size:9px;font-family: Verdana,Arial,Helvetica,sans-serif;text-decoration:none;"></div>
<script type="text/javascript" src="https://canvasjs.com/assets/script/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="https://canvasjs.com/assets/script/canvasjs.stock.min.js"></script>
编辑:我附上了代码片段。
解决方法
我需要做的很简单。如果任何小伙伴有类似的问题,我会发布我的解决方案。
将字符串转换为对象
var my_obj = eval('({' + txt+ '})');
将数据转换为数组
var my_obj = eval(var_array);
参考问题:String to object in JS Convert form data to JavaScript object with jQuery
干杯!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。