kod aşağıdaki gibi bir javascript Nesnesi oluşturmak:JavaScript: dize olarak dışarı parantez return'in bütün işlevi olan bir işlev çağırma
var obj={
a : 10,
b : 20,
add : function(){
return this.a + this.b;
},
};
ben bu kodu obj.add
ile işlevini yürütür ve böyle dize olarak tüm işlev döndürecek : -
function(){
return this.a + this.b;
ama daha sonra ben denemek yeniden obj.add()
gibi parantez dahil işlevini çağırmak ve onu ben almak neden ben çözemedim İşte 30. değerini döndürmek böyle dışarı farklı 012 ile işlevini çağırarak üzerine koymakve obj.add()
? Nesneleri parantez içinde ve parantez içinde çağırmak arasındaki ana fark nedir?
yapamazsınız * çağrı * Parantez olmayan bir fonksiyondur. '()' Eklemek bir işlevi nasıl çağırırsınız. '()' Olmadan, sadece işlevi kendiniz alırsınız. JavaScript'te, işlevler yalnızca dizeler veya ints veya değişkenler gibi değişkenlerdir. –
'add' [bir' Function' nesnesi] 'dir (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function). Parantez olmadan kullandığınızda, * büyük olasılıkla * arayanın [tip baskısı] aracılığıyla bir "dizgeye" dönüştürülürsünüz (http://stackoverflow.com/questions/19915688/what-exactly-is-type- coercion-in-javascript) – blgt
ama ben dev araçlarda görüyorum ben obj.add arayarak nesne alıyorum, ancak litteral dize. Bunu anlamadım – ambes