Node.js 응용 프로그램을 작성하고 있습니다. 그리고 함수의 주장을 수정해야하는 곳이 있습니다. (http://eslint.org/docs/rules/no-param-reassign를JavaScript에서 함수 인수를 수정하는 것은 나쁜 습관입니까
exports.fetchUserDetails = function (req, res, next) {
httprequest(opts, function (err, res, body) {
req.user = body.user;
next()
}
}
는 것은, 나는 정적 코드 분석기 (ESLint)를 사용하기 시작하고 항상 함수 인수를 재 할당에 대한 불평 : 예를 들어, 사용자를 추가하는이 익스프레스 미들웨어는 그렇게 요청하는 내가 나중에 볼 수 있습니다). 나는이 규칙이 이유가 있다고 생각한다.
function modifyParam(param) {
param.a = 2
}
var obj = { a: 1 };
console.log(obj); // outputs { a: 1 };
modifyParam(obj);
console.log(obj); // outputs { a: 2 };
하지만 난 정말 인수가 재 할당없이 내 미들웨어를 리팩토링 할 수있는 다른 방법이 표시되지 않는 :
나는 함수 매개 변수를 수정하면이 예에서와 같이 나쁜 될 수 있음을 알고있다.
그래서 제 질문은 :
- 내가 재 할당 PARAMS를 사용할 수 있습니까?
- 어떻게하면 내 미들웨어가 이것을 피할 수 있습니까? (아니면 그대로 두어야합니까?)