nasıl Protovis çalıştığını anlamak için denemek ve böyle kod tökezledi:Garip JavaScript ifadesi
(function(a) a+2)
Ben duyuyorum: Böyle
force.node.add(pv.Dot)
.size(function(d) (d.linkDegree + 4) * Math.pow(this.scale, -1.5)) // notice this
.fillStyle(function(d) d.fix ? "brown" : colors(d.group)) // and this
.strokeStyle(function() this.fillStyle().darker()) // and even this
.lineWidth(1)
.title(function(d) d.nodeName)
.event("mousedown", pv.Behavior.drag())
.event("drag", force);
Ben kendi kısa fonksiyonları haddeleme çalıştı
, function(){stuff();}
gibi bildirilen anonim işlevlerle ilgili NOT. Söz konusu kod function() stuff;
gibi görünüyor ve işe yarıyor. Neden olduğunu bilmek isterim. myvar = function(a){return a+1;}
gibi yapılar hakkında bilgi edinmek istemiyorum, ancak myvar = (function(a) a+1)
gibi yapılar hakkında. Lütfen yukarıdaki kodu daha dikkatli bir şekilde inceleyin.
Ancak, şüphelendiğim gibi bir sözdizimi hatası attı.
Nasıl böyle kod işi olabilir?
:
ben alamadım. Hatta belirtilmiş dilbilgisini kontrol ettim - parantez * isimleri anonim işlevler için gereklidir: http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf "A.5 İşlevler ve Programlar ". – delnan
@delnan ben de :) –