我从JQuery代码中收到错误,返回错误:Uncaught SyntaxError: Unexpected identifier
这对我不起作用:
var Script = function () {
$(function () {
Morris.Area({
element: 'hero-area',
data: [
{period: 'January', Total Deposit: 19000, Total Fee Payments: -744.3, Total Settlement Payout: 24900, Total Contracts: 1825},
{period: 'February', Total Deposit: 11000, Total Fee Payments: -189.9, Total Settlement Payout: 6400, Total Contracts: 429},
{period: 'March', Total Deposit: 14000, Total Fee Payments: -206.1, Total Settlement Payout: 3955, Total Contracts: 743}],
xkey: 'period',
ykeys: ['Total Deposit', 'Total Fee Payments', 'Total Settlement Payout', 'Total Contracts'],
labels: ['Total Deposit', 'Total Fee Payments', 'Total Settlement Payout', 'Total Contracts'],
hideHover: 'auto',
lineWidth: 1,
pointSize: 5,
lineColors: ['#4CD964', '#007AFF', '#FFCC00'],
fillOpacity: 0.5,
smooth: true
});
});
}();
错误出现在这一行:
{period: 'January', Total Deposit: 19000, Total Fee Payments: -744.3, Total Settlement Payout: 24900, Total Contracts: 1825},
虽然以下代码工作正常。
var Script = function () {
$(function () {
Morris.Area({
element: 'hero-area',
data: [
{period: '2010 Q1', iphone: 2666, ipad: null, itouch: 2647},
{period: '2010 Q2', iphone: 2778, ipad: 2294, itouch: 2441},
{period: '2010 Q3', iphone: 4912, ipad: 1969, itouch: 2501},
{period: '2010 Q4', iphone: 3767, ipad: 3597, itouch: 5689},
{period: '2011 Q1', iphone: 6810, ipad: 1914, itouch: 2293},
{period: '2011 Q2', iphone: 5670, ipad: 4293, itouch: 1881},
{period: '2011 Q3', iphone: 4820, ipad: 3795, itouch: 1588},
{period: '2011 Q4', iphone: 15073, ipad: 5967, itouch: 5175},
{period: '2012 Q1', iphone: 10687, ipad: 4460, itouch: 2028},
{period: '2012 Q2', iphone: 8432, ipad: 5713, itouch: 1791}
],
xkey: 'period',
ykeys: ['iphone', 'ipad', 'itouch'],
labels: ['iPhone', 'iPad', 'iPod Touch'],
hideHover: 'auto',
lineWidth: 1,
pointSize: 5,
lineColors: ['#4CD964', '#007AFF', '#FFCC00'],
fillOpacity: 0.5,
smooth: true
});
});
}();
答案 0 :(得分:3)
您正在尝试使用包含空格的属性名称。你可以这样做,但必须引用名称:
{period: 'January', 'Total Deposit': 19000, 'Total Fee Payments': -744.3, 'Total Settlement Payout': 24900, 'Total Contracts': 1825},
要引用此类属性名称,您必须使用[ ]
运算符而不是.
:
var someObject = // one of your objects with those names
var settlement = someObject['Total Settlement Payout'];
使用单引号或双引号字符无关紧要。