反复调用匿名函数会损害代码的性能。
例如,如果我们反复调用doubleArrayItems
,则此代码:
function doubleArrayItems(array) {
return array.map(number => number*2);
}
执行的效果将比此代码稍差:
const doubleNumber = number => number*2;
function doubleArrayItems(array) {
return array.map(doubleNumber);
}
这是因为箭头函数是匿名的,并且每次调用它们时都必须创建一个新实例。
在样式组件模板中使用箭头功能时是否同样适用? 还是样式组件库以某种方式在内部存储了功能?
例如,这样做:
...
const StyledDiv = styled.div`
height: ${props => getProp(props, 'height')};
`;
比这更糟糕:
...
const getHeightFromProps = props => getProp(props, 'height');
const StyledDiv = styled.div`
height: ${getHeightFromProps};
`;
重复重新渲染<StyledDiv>
时是什么?