6
array splicing için CoffeeScript belgelerinde, , _ref
izinin amacı nedir?Coffeescript ile dizi ekleme, _ref nedir?
CoffeeScript:
numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
numbers[3..6] = [-3, -4, -5, -6]
için derler:
CoffeeScript en dilimleme işlemi sadece atadığı dilim dönmek istiyor, ancak bunun yerine kaldırılan elementler splice() döndürdüğü için varvar numbers, _ref;
numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
[].splice.apply(numbers, [3, 4].concat(_ref = [-3, -4, -5, -6])), _ref;
+1, Douglas Crockford, 'aşırı zor ifadelere' yol açabileceğinden kullanmayı önermektedir, sanırım bunu unutmuşumdur. Bu cevap vermek imkansız olabilir, ancak bu örnekte akılda tutulan dilimin kahveScript'in dönmek istediğinin sebebini biliyor musunuz? Teşekkürler. – AJP
@AJP, muhtemelen arayanın döndürülen değerle ilgilenip ilgilenmediği aynı kod parçasını oluşturabileceğinden. Diğer bir deyişle, ikinci durumda "_ref" in "optimize edilmesi", derleyiciye getirilen ek karmaşıklığa değmeyebilir. –