서버로부터 완전한 새로운 페이지를 불러오지 않고 페이지 갱신에 필요한 데이터만 받아
그 정보를 기준으로 현재의 페이지를 업데이트함으로써 사용자와 소통하는 웹 어플리케이션이나 웹 사이트
전통적인 웹사이트에서는 사용자가 웹사이트 내의 다른 페이지로 이동하면, 브라우저가 페이지를 보여주기 위해
매번 HTML 파일로 된 '페이지 전체'를 불러와야 했다.
시간이 지나며 웹사이트가 보다 복잡해지고, 사용자와 서비스 사이에 더욱 많은 상호작용이 일어나게 되면서
불필요한 요소들까지 모두 불러오는 것이 서버와의 불필요한 트래픽을 발생시켰다.
이로인해 느린 반응성을 갖게 되고, 좋은 사용자 경험을 제공하기 어렵게 만들었다.
이러한 단점을 보완하고자, HTML 문서 전체가 아닌, 업데이트에 필요한 데이터만 서버에서 전달받아
필요한 데이터만 JavaScript가 동적으로 HTML 요소를 생성해서 화면에 보여주는 방식이 개발되어 사용되기 시작했다. 이것이 바로 SPA 이다.