Eval()을 사용하지 않고 JavaScript에서 수학 표현식을 평가
잠재적으로 위험한 eval() 함수에 의존하지 않고 수학 표현식을 평가하는 것은 일반적입니다. JavaScript 프로그래밍의 작업. 이 문제를 해결하기 위해 몇 가지 대체 솔루션을 살펴보겠습니다.
JavaScript 표현식 평가기
JavaScript 표현식 평가기 라이브러리는 수학 표현식을 구문 분석하고 평가하는 편리한 방법을 제공합니다. 이를 통해 표현식 문자열을 지정하고 변수를 사용하여 평가를 사용자 정의할 수 있습니다. 예를 들어, 다음 코드는 x가 3인 "2 ^ x" 표현식을 평가합니다.
const result = Parser.evaluate("2 ^ x", { x: 3 });
Math.js
Math.js는 또 다른 인기 있는 형식입니다. 수학 연산을 위한 JavaScript 라이브러리입니다. 여기에는 광범위한 수학 함수를 지원하는 강력한 표현식 파서가 포함되어 있습니다. JavaScript 표현식 평가기와 마찬가지로 변수를 전달하고 표현식을 동적으로 평가할 수 있습니다.
const result = math.eval('sin(45 deg) ^ 2');
사용자 권장 사항
다른 사용자가 Stack Overflow에서 다음과 같은 응답을 제안했습니다. evalx() 함수를 활용하여 수학적 표현식을 안전하게 평가합니다. 다음은 해당 답변의 일부입니다.
function evalx(expr, scope) { return Function(`'use strict'; return (${expr})`)()(...scope); }
evalx() 함수를 호출하면 eval()과 관련된 보안 위험 없이 표현식을 평가할 수 있습니다.
위 내용은 `eval()`을 사용하지 않고 JavaScript에서 수학적 표현식을 안전하게 평가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!