たとえば、要素の実際の幅を取得するために、関数が割り当てられた変数名を使用する方法はありますか?
var xvar = function(){ return $('#y').width()}
そしてそれを次のように使用します
console.log(xvar);
それ以外の
console.log(xvar());
たとえば、要素の実際の幅を取得するために、関数が割り当てられた変数名を使用する方法はありますか?
var xvar = function(){ return $('#y').width()}
そしてそれを次のように使用します
console.log(xvar);
それ以外の
console.log(xvar());
変数ではできませんが、オブジェクトのプロパティでは可能です。ゲッターといいます。
var obj = {
get xvar() { return $('#y').width(); }
};
次に、次を使用できます。
obj.xvar; // will run the above function
(理論的には、変数ゲッターを使用する方法は、オブジェクトのプロパティが変数を反映する場合です。たとえば、window
オブジェクトです。)
関数が返される限り、String
またはNumber
これが非 ES5 環境の代替になる可能性があります。
var xvar = new function(id){
this.toString =
this.valueOf = function(){
return $(id).width()};
}('#y');
xvar
すぐに呼び出された関数の結果への参照を保存するため、間違いがなければ機能します。
var xvar = (function() { return $('#y').width(); })();
console.log(xvar);
xvar()
ただし、それ以降はバージョンを使用できません。