关于功能使用,我几乎没有什么具体问题。
如果在这里问似乎太基本了,我深表歉意。我正在从事一个不断发展的项目。这些问题最近一直困扰着我。
问题:
1. 我需要验证每个函数中的参数吗?
//getConcatInfo: ("John Doe", 50, {name: "London"}) => "John 50 London"
getConcatInfo(name, age, city){
let first = name.split(" ")[0];
return first + " " + age + " " + city.cityName;
}
- 我是否应该检查项目中的每个函数中是否存在每个参数?
- 对于所有函数,我是否应该检查每个参数的类型是否正确?例如
city应该是一个带有键的对象,cityName并且name应该age是String和Number - 例如,如果存在两个参数并且第三个参数不应该抛出异常或只返回 null。询问这个问题的原因是,像
RXJS, 这样的库将在该事件处理程序中引发任何错误时停止侦听给定事件
2. 在调用函数之前我需要验证参数吗?
let name = user.name;
let name = user.age;
let city = getUserCity();
if(name && age && city && city.name) //<= like this?
getConcatInfo(name, age, city);
我的问题是:我是采用方法 1 还是方法 2 还是两者兼而有之?