1

javascriptを使用して関数に渡されたオブジェクトパラメータにアクセスするにはどうすればよいですか? さまざまな column_name を動的に使用したいと考えています。feature.attribute には列名があります。feature.attributecolumn nameを連結したいと思います。これまでのところ、私は試しました:

私のコード:

var column_name = "LOCAL_POP";

var initialize = {
    init_style: function() {
        style = new OpenLayers.StyleMap({
            "default": new OpenLayers.Style(
                    {
                        fillColor: "${getColor}",
                        strokeColor: "#00FF01",
                        fillOpacity: 0.7,
                        graphicZIndex: 1,
                        label: "${DISTRICT}"
                    },
            {
                context: {
                    getColor: function(feature) {

**// tested by creating a local variable and window variable**

                        this.feature = feature;
                        var feature_name = 'feature.attributes.' + column_name;
                        console.log(window);
                        console.log(this['feature_name']);
                        console.log(window['feature_name']);
                        return  feature_name > 1000000 ? '#006D2C' :
                                feature_name > 100000 ? '#31A354' :
                                feature_name > 5000 ? '#74C476' :
                                feature_name >= 0 ? '#A1D99B' :
                                '';
                    }
                }
            }),
            "select": new OpenLayers.Style(
                    {
                        strokeColor: "#00FF01",
                        fillOpacity: 0.7
                    })
        });
        return style;
    }
};
4

1 に答える 1