In the CoffeeScript docs for array splicing, what is the purpose of the trailing , _ref
?
CoffeeScript:
numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
numbers[3..6] = [-3, -4, -5, -6]
Compiles to:
var 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;
In the CoffeeScript docs for array splicing, what is the purpose of the trailing , _ref
?
CoffeeScript:
numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
numbers[3..6] = [-3, -4, -5, -6]
Compiles to:
var 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;
Share
Improve this question
asked Jul 28, 2012 at 11:06
AJPAJP
28.7k26 gold badges94 silver badges144 bronze badges
1 Answer
Reset to default 7That's because CoffeeScript's slicing operation wants to return the slice it has just assigned, but splice() returns the removed elements instead.
So, in order to achieve this, it piles the construct into a code fragment that first assigns the slice to a local _ref
variable, then uses the ma operator to return that variable after calling splice()
.
发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745112417a4611924.html
评论列表(0条)