使用console.log运行错误(util.format

时间:2014-11-12 08:36:27

标签: javascript node.js npm

首先我要说,我是node.js的新手。

我的一位同事帮我处理了下面的代码。

我已经通过search-google-geocode安装了所需的软件包csv-parserfsutilasyncnpm

然而,当我运行它时。

我有这个错误

console.log(util.format("  Area %s", preciseLoc.area);
                ^^^^^^^
SyntaxError: Unexpected identifier
    at Module._compile (module.js:439:25)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Function.Module.runMain (module.js:497:10)
    at startup (node.js:119:16)
    at node.js:906:3

我首先想到的是由于缺少分号,但事实并非如此。

听起来很熟悉吗?如果是,您对如何解决问题有任何想法吗?

这段代码

var geocoder = require('search-google-geocode');
var csv = require('csv-parser');
var fs = require('fs');
var util = require('util');
var async = require('async');

var options = {
    language: 'fr'
};

var locs = [];

var csvReader = fs.createReadStream('locs2.csv').pipe(csv());

var geoResult = function(err, result) {
}

csvReader.on('data', function(data) {
    locs.push(data);
});

var rowCount = 1;
csvReader.on('end', function() {
    console.log(locs.length + " rows read from CSV");
    async.eachSeries(locs, function(loc, cb) {
        console.log("\nLooking up row " + rowCount + ": " + loc.lat + "," + loc.lon);
        rowCount++;
        geocoder.reverseGeocode(loc.lat, loc.lon, function(err, result) {
            if (err) {
                console.log(err);
            } else {
                var preciseLoc = result[0];
                console.log(util.format("Reverse geocode: %s, %s", preciseLoc.latitude, preciseLoc.longitude)
                console.log(util.format("  Area %s", preciseLoc.area));
                console.log(util.format("  Zip %s", preciseLoc.zipcode));
            }

            cb();
        } , options);
    },

    function(err) {
        return null;
    });
});

1 个答案:

答案 0 :(得分:1)

我认为这一行:

console.log(util.format("Reverse geocode: %s, %s", preciseLoc.latitude, preciseLoc.longitude)

缺少结束括号,应该更改为:

console.log(util.format("Reverse geocode: %s, %s", preciseLoc.latitude, preciseLoc.longitude));