기본을 조금 다지면서 이 문제를 발견했습니다. 직관적으로 알지만 자세히 알아보지는 못했습니다. 그리고 JavaScript가 기본 요소를 처리하는 방법을 더 깊이 이해하지 못할 이유가 없습니다.
이것은 가장 간단한 예입니다. 여기서는 add3 및 Remove1 함수를 호출해도 myPoints변수가 업데이트되지 않습니다.
let myPoints = 3; function add3(points) { points += 3; } function remove1(points) { points--; } add3(myPoints); remove1(myPoints); console.log(myPoints) // 3
이 작업을 수행하는 핵심 개념은 다음과 같습니다.
값으로 전달:
JavaScript에서는 숫자와 같은 기본 값을 함수에 전달하면 값으로 전달됩니다. 이는 원래 변수 자체가 아닌 값의 복사본이 생성되어 함수에 전달된다는 의미입니다.
기능 범위:
함수 내부에 정의된 변수에는 함수 범위가 있습니다. 즉, 해당 함수 내에서만 액세스할 수 있습니다.
반환 값:
함수 외부에서 결과를 사용하려면 JavaScript의 함수가 명시적으로 값을 반환해야 합니다.
myPoints가 변경되지 않는 이유는 다음과 같습니다.
이 문제를 해결하려면 다음 두 가지 주요 옵션이 있습니다.
function add3(points) { return points + 3; } myPoints = add3(myPoints);
let myPoints = { value: 3 }; function add3(pointsObj) { pointsObj.value += 3; } add3(myPoints); console.log(myPoints.value); // Now it's 6
위 내용은 기본 요소, 함수 및 WTH 값이 업데이트되지 않습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!