【问题标题】:JSON.parse: expected double-quoted property name (var json = JSON.parse( xhr.responseText );)JSON.parse: 预期的双引号属性名称 (var json = JSON.parse(xhr.responseText);)
【发布时间】:2013-03-11 10:02:58
【问题描述】:

https://www.dropbox.com/s/h59v7elqn05t7lc/bag.js

下面的代码给出了json文件的链接

SyntaxError: JSON.parse: expected double-quoted property name

Javascript:

var init = function () {
    var canv = document.getElementsByTagName("canvas")[0];
    var w = canv.clientWidth;
    var h = canv.clientHeight;

    var renderer = new THREE.WebGLRenderer({
        canvas: canv
    });
    renderer.setSize(w, h);

    var scene = new THREE.Scene();

    var camera = new THREE.PerspectiveCamera(
        15, // Field of view
    w / h, // Aspect ratio
    0.1, // Near
    10000 // Far
    );
    camera.position.set(-1, 1, 15);
    scene.add(camera);

    var light = new THREE.PointLight(0xFFFFDD);
    light.position.set(-15, 10, 15);
    scene.add(light);

    var ambient = new THREE.AmbientLight(0x999999);
    scene.add(ambient);

    var loader = new THREE.JSONLoader();
    var onGeometry = function (geom) {
        var mesh = new THREE.Mesh(geom, new THREE.MeshFaceMaterial());
        scene.add(mesh);
    };
    loader.load("vwbug.js", onGeometry);

    var render = function () {
        renderer.render(scene, camera);
    };

    setInterval(render, 10);
};

window.onload = init;
window.onresize = init;

【问题讨论】:

    标签: json three.js


    【解决方案1】:

    我认为这是由第 8 行多余的逗号引起的。

    "materials": [ { 
        "DbgColor" : 15658734, 
        "DbgIndex" : 0, 
        "DbgName" : "dummy", 
        "colorDiffuse" : [ 1, 0, 0 ], 
    } ],
    

    要发现类似的问题,验证器可能会有所帮助,例如,http://jsonlint.com

    【讨论】:

    • 第 22 行还有一个额外的逗号。
    • 好的修复了它,但它说.. TypeError: material is undefined... but the materials are defined :\
    • "ok 修复了它,但它说.. TypeError: material is undefined... but the materials are defined" - 对于这个问题,您可能需要创建单独的问题供其他人评论(除非您可以最后调试它)。这个好像和three.js有关,我也不是很擅长。 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-27
    • 1970-01-01
    • 2016-02-28
    • 2017-02-26
    相关资源
    最近更新 更多