0

私はこのコードを持っています:

var rect2 = new drawRect({
        h: 100,
        w: 100,
        x: 280,
        y: 20,
        colour: '8CB5CF',
        name: 'Office 2'
}

drawRect に渡すプロパティを読み取ることは可能ですか? 私の最初の考えは:

alert(rect2.h)

しかし、その結果、undefined実際に機能するとは思っていませんでしたが、他にこれにアプローチする方法がわかりません。

私はjavascriptにかなり慣れていません。ありがとう。

編集: 申し訳ありませんが、drawRect は次のとおりです。

    function drawRect(rectOptions){
        var ctx = document.getElementById('canvas').getContext('2d');
        ctx.fillStyle = rectOptions.colour;
        ctx.fillRect(rectOptions.x,rectOptions.y,rectOptions.h,rectOptions.w);
        ctx.font = '12px sans-serif';
        ctx.fillText(rectOptions.name, rectOptions.w + rectOptions.x, rectOptions.h     + rectOptions.y);
    }

ここに完全なコードがあります:完全なコード

4

2 に答える 2

0

関数内に、によって構築されたオブジェクトにプロパティをdrawRect追加する行を追加できます。optiondrawRect

function drawRect(rectOptions) {
  this.options  = rectOptions;
  //...
}

それからあなたはすることができます

var rect2 = new drawRect({ /* ... */ });
alert(rect2.options.h);

drawRectまたは、渡されたオプションを返すこともできます。

function drawRect(rectOptions) {
  //...
  return rectOptions;
}

その後、最初に試したように、

alert(rect2.h);
于 2013-01-22T02:54:05.957 に答える
0
var rect2 = new drawRect({
        h: 100,
        w: 100,
        x: 280,
        y: 20,
        colour: '8CB5CF',
        name: 'Office 2'
})
 function drawRect(rectOptions){
        //your code
        return rectOptions;//you have to return the value 
    }

alert(rect2.h);//alerts 100

jsfiddleへのリンク

于 2013-01-22T02:55:22.000 に答える