我将 d3 与 Angular 结合使用。我在 Controller 中初始化了一个对象数组:
myApp.controller('LineChartCtrl', ['$scope', function($scope){
$scope.d3Data = [
{date: "1-May-12", close: 98},
{date: "30-Apr-12", close: 96},
{date: '27-Apr-12', close: 75},
{date: "22-Apr-12", close: 48}
];
}]);
在正确接收数据的 d3 指令中,我使用以下函数:
data.forEach(function(d) {
d.date = parseDate(d.date);
d.close = +d.close;
});
解析日期(不确定第三行实际上做了什么...它可能将某些内容转换为 JavaScript Number
对象...)。但是,第二个代码片段返回错误:“未定义不是函数。”我是否以某种方式错误地访问了该对象的属性?
最佳答案
JS中没有parseDate这样的东西。你可以试试
d.date = new Date(d.date);
关于JavaScript "Undefined is not a function"循环访问对象数组时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24165906/