js 전역 변수와 PHP 전역 변수의 차이점은 무엇입니까?

WBOY
풀어 주다: 2023-03-15 12:36:01
원래의
2017명이 탐색했습니다.

js 전역 변수와 PHP 전역 변수의 차이점: PHP는 함수에서 전역 변수를 호출할 때 전역 키워드를 사용해야 합니다. 이 키워드는 전역 변수를 가져오는 데 사용되지만 js에서 전역 변수를 호출할 때는 키워드를 사용할 필요가 없습니다. .

js 전역 변수와 PHP 전역 변수의 차이점은 무엇입니까?

이 문서의 운영 환경: Windows 10 시스템, PHP 버전 7.1, Dell G3 컴퓨터.

js 전역 변수와 PHP 전역 변수의 차이점은 무엇인가요?

PHP 전역 키워드

전역 키워드는 함수 내에서 전역 변수에 액세스하는 데 사용됩니다.

이를 위해서는 (내부 함수) 변수 앞에 전역 키워드를 사용하세요:

Example

<?php
$x=5;
$y=10;
function myTest() {
  global $x,$y;
  $y=$x+$y;
}
myTest();
echo $y; // 输出 15
?>
로그인 후 복사

js 전역 변수

JS에서 전역 변수 선언은 주로 명시적 선언과 암시적 선언으로 나누어지며, 이에 대해 소개합니다. 아래에. .

선언 방법 1:

함수 외부에 선언하려면 var(키워드) + 변수명(식별자)을 사용하세요. 그렇지 않으면 함수 내에서 선언된 지역 변수입니다. 이 방법은 명시적 선언입니다. 세부 사항은 다음과 같습니다.

var test = 5;  //全局变量
function a()
{
  var cc=3; //局部变量
  alert(test);
}
function b(){alert(test);}
로그인 후 복사

선언 방법 2:

var를 사용하지 않고 식별자 test에 직접 값을 할당하면 암시적으로 전역 변수 test가 선언됩니다. 명령문이 함수 내에 있더라도 함수가 실행되면 test는 전역 변수가 됩니다.

test = 5;//全局变量 
function a()
{
  aa=3; //全局变量
  alert(test);
}
로그인 후 복사

js 전역 변수의 장점:

변수 수를 줄이고 실제 매개변수와 형식 매개변수의 데이터 전송으로 인한 시간 소모를 줄일 수 있습니다.

js 전역 변수의 단점:

(1) 전역 변수는 정적 저장 영역에 저장됩니다. 프로그램이 실행될 때 메모리가 할당되고 프로그램이 끝나면 메모리가 해제됩니다. 로컬 변수의 동적 할당 및 동적 해제에 비해 수명이 상대적으로 길기 때문에 전역 변수가 너무 많으면 더 많은 메모리 단위를 차지하게 됩니다.

(2) 전역 변수는 함수의 캡슐화 성능을 파괴합니다. 함수는 일반적으로 함수 매개변수와 반환 값을 통해 입력과 출력을 수행하는 블랙박스와 같습니다. 그러나 함수에 전역 변수를 사용하면 함수 본문의 명령문이 함수 매개변수를 우회하고 액세스를 위한 값을 반환할 수 있습니다. 이러한 상황은 함수의 독립성을 파괴하고 함수를 전역 변수에 종속되게 만듭니다. 동시에, 이 기능의 이식성도 감소합니다.

(3) 전역 변수는 함수 코드를 읽기 어렵게 만듭니다. 여러 함수가 전역 변수를 사용할 수 있기 때문에 전역 변수의 값은 함수가 실행될 때 언제든지 변경될 수 있으며 이는 프로그램 오류 확인 및 디버깅에 매우 해롭습니다.

따라서 꼭 필요한 경우가 아니면 전역 변수를 사용하지 않는 것이 가장 좋습니다.

추천 학습: "PHP 비디오 튜토리얼"

위 내용은 js 전역 변수와 PHP 전역 변수의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!