我有足够多的功能,看起来像:
var functionName = function(e) {
//
};
所有参数都在单个容器中传入e
。大多数时候值是简单值(无函数),例如:
{ parameter1: 1, parameter2: "Name", parameter3:{ subParameter1: "A"}}
但有时我传递函数如下:{ p2:function(){...} }
在使用参数值时,我有两种选择:
选项 1:从链中获取参数值,从e
:e.parameter1、e.parameter3.subParameter1 等开始。
选项 2:使用缓存的参数值:
var parameter1 = e.parameter1;
var subParameter1 = e.parameter3.subParameter1;
第二个选项提高了可读性,但增加了变量的数量和代码库的大小。另一方面,当使用长链时,它会更干燥,即e.p1.p2.p3
等。
我应该使用什么推理在这两个选项之间进行选择?
**Update 1 - the question sounds quite subjective, let me re-prase it.**
我不介意一直使用链,没有本地变量代码库更小,我总能弄清楚是什么,在任何情况下缓存是必须的吗?