>  기사  >  웹 프론트엔드  >  Chuanzhi Podcast AJAX 비디오 자료 공유

Chuanzhi Podcast AJAX 비디오 자료 공유

巴扎黑
巴扎黑원래의
2017-08-30 14:56:511152검색

AJAX는 "Asynchronous Javascript And XML"(Asynchronous JavaScript and XML)을 의미하며 대화형 웹 애플리케이션을 만들기 위한 웹 개발 기술을 나타냅니다.

AJAX = 비동기 JavaScript 및 XML(표준 범용 마크업 언어의 하위 집합).

AJAX는 빠르고 동적인 웹 페이지를 만드는 기술입니다.

AJAX는 전체 웹페이지를 다시 로드하지 않고도 웹페이지의 일부를 업데이트할 수 있는 기술입니다.

AJAX를 사용하면 백그라운드에서 서버와 소량의 데이터를 교환하여 웹페이지를 비동기적으로 업데이트할 수 있습니다. 이는 전체 페이지를 다시 로드하지 않고도 웹페이지의 일부를 업데이트할 수 있음을 의미합니다.

AJAX를 사용하지 않는 기존 웹페이지에서는 콘텐츠를 업데이트해야 하는 경우 전체 웹페이지를 다시 로드해야 합니다.

AJAX는 "Asynchronous Javascript And XML"(Asynchronous JavaScript and XML)의 약자로, 대화형 웹 애플리케이션을 만들기 위한 웹 개발 기술을 의미합니다. "Chuanzhi Podcast AJAX 비디오 튜토리얼"에서는 AJAX 관련 기술을 설명합니다.

Chuanzhi Podcast AJAX 비디오 자료 공유

동영상 재생 주소: http://www.php.cn/course/565.html

AJAX 개발의 어려움

이 문제를 간단한 예를 통해 이해해 보겠습니다. 모든 기사 정보를 서버에서 한꺼번에 불러오는 것이 아니라, 사용자 요청에 따라 서버와 상호 작용하여 각 기사의 정보를 동적으로 불러올 수 있는 트리 구조의 게시판 시스템(BBS)을 구축한다고 가정해 보겠습니다. 각 기사에는 시스템에서 고유 식별자로 사용할 수 있는 ID, 포스터 이름, 기사 내용, 모든 하위 기사의 ID를 포함하는 배열 정보라는 네 가지 관련 속성이 있습니다. 먼저, 기사 정보를 불러올 수 있는 getArticle()이라는 함수가 있다고 가정합니다. 이 함수가 전달받은 인자는 로딩할 기사의 ID이며, 이를 통해 서버로부터 기사 정보를 얻을 수 있다. 반환되는 객체에는 기사와 관련된 4가지 속성(id, name, content 및 children)이 포함되어 있습니다. 루틴은 다음과 같습니다.

function ( id ) {
     var a = getArticle(id);
     document.writeln(a.name + "
" + a.content);
 }

그러나 동일한 기사 ID로 이 함수를 반복적으로 호출하려면 서버와의 반복적이고 도움이 되지 않는 통신이 필요하다는 것을 알 수 있습니다. 이 문제를 해결하려면 캐싱 기능이 있는 getArticle()과 동일한 getArticleWithCache() 함수 사용을 고려할 수 있습니다. 이 예에서 getArticle()에 의해 반환된 데이터는 전역 변수로만 저장됩니다:

var cache = {};
 function getArticleWithCache ( id ) {
     if ( !cache[id] ) {
         cache[id] = getArticle(id);
     }
     return cache[id];
 }

이제 읽은 기사가 캐시되었으므로 위에서 언급한 방법을 적용하는 backgroundLoad() 함수를 다시 고려해 보겠습니다. 메커니즘은 모든 기사 정보를 로드합니다. 그 목적은 독자가 기사를 읽을 때 배경에서 모든 하위 기사를 미리 로드하는 것입니다. 기사 데이터가 트리 구조로 되어 있기 때문에 트리를 순회하고 모든 기사를 로드하는 재귀 알고리즘을 쉽게 작성할 수 있습니다.

function backgroundLoad ( ids ) {
     for ( var i=0; i < ids.length; i++ ) {
         var a = getArticleWithCache(ids[i]);
         backgroundLoad(a.children);
     }
 }

BackgroundLoad() 함수는 ID 배열을 매개변수로 받은 다음 이전에 정의된 함수를 다음과 같이 호출합니다. 각 ID getArticldWithCache() 메서드를 사용하여 각 ID에 해당하는 기사를 캐시합니다. 그런 다음 로드된 기사의 하위 기사 ID 배열을 통해 backgroundLoad() 메서드가 재귀적으로 호출되어 전체 기사 트리가 캐시됩니다.

위 내용은 Chuanzhi Podcast AJAX 비디오 자료 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.