작은 프로그램이나 일부 프레임워크를 개발할 때 문자열인 요청 콜백을 많이 만나게 됩니다. 문자열이 객체나 json보다 성능이 좋기 때문인가요?
왜냐면. . 무슨 일이 있어도 백그라운드 응답은 문자열입니다. 따라서 js 在收到 object 的时候,也是一串 json 的字符串。然后,js 이 문자열을 객체로 구문 분석해야 합니다. 성능은 일반 스트링보다 확실히 낫지만 성능상의 이점은 거의 무시할 수 있습니다. 결국, 복잡한 데이터 구조가 있는 경우 일반 문자열로는 이러한 요구 사항을 해결할 수 없습니다.
js
object
json
백엔드를 수행할 수 없습니다直接传 Object.
直接
Object
이유는 매우 간단합니다. 다양한 백엔드 언어가 있고 전송된 다양한 개체가 프런트엔드 JS에 의해 JS 개체로 직접 처리되지 않을 수 있습니다.
따라서 다양한 유형의 객체를 JS가 이해할 수 있는 객체로 변환하려면 일종의 객체 표현을 사용해야 합니다标准范式.
标准范式
아마도 이 패러다임이 JSON ———— 객체 표현(문자열 형식)
JSON
이러한 방식으로 모든 백엔드 언어는 객체를 JSON(라이브러리의 도움을 받거나 직접 작성하여)로 변환한 다음 이를 프런트 엔드로 보낼 수 있으므로 프런트 엔드는 JSON을 JS 개체로 쉽게 변환할 수 있습니다.
다음을 볼 수 있습니다:
여러 언어로 된 객체의 다양한 구현 => Obejct 实现 => JSON => JavaScript =>
객체
Obejct
JavaScript
Object 调制成 JSON字符串 然后发往前端。 前端收到后 解调成 JS Object
JSON字符串
JS Object
왜냐면. . 무슨 일이 있어도 백그라운드 응답은 문자열입니다. 따라서
js
在收到object
的时候,也是一串json
的字符串。然后,js
이 문자열을 객체로 구문 분석해야 합니다. 성능은 일반 스트링보다 확실히 낫지만 성능상의 이점은 거의 무시할 수 있습니다. 결국, 복잡한 데이터 구조가 있는 경우 일반 문자열로는 이러한 요구 사항을 해결할 수 없습니다.백엔드를 수행할 수 없습니다
直接
传Object
.이유는 매우 간단합니다. 다양한 백엔드 언어가 있고 전송된 다양한 개체가 프런트엔드 JS에 의해 JS 개체로 직접 처리되지 않을 수 있습니다.
따라서 다양한 유형의 객체를 JS가 이해할 수 있는 객체로 변환하려면 일종의 객체 표현을 사용해야 합니다
标准范式
.아마도 이 패러다임이
이라고 짐작하셨을 것입니다.JSON
———— 객체 표현(문자열 형식)이러한 방식으로 모든 백엔드 언어는 객체를
JSON
(라이브러리의 도움을 받거나 직접 작성하여)로 변환한 다음 이를 프런트 엔드로 보낼 수 있으므로 프런트 엔드는 JSON을 JS 개체로 쉽게 변환할 수 있습니다.다음을 볼 수 있습니다:
여러 언어로 된
그 반대도 마찬가지입니다.객체
의 다양한 구현 =>Obejct
实现 =>JSON
=>JavaScript
=>또는 다르게 생각할 수도 있습니다:
Object
调制成JSON字符串
然后发往前端。前端收到后 解调成
JS Object
당신이 언급한 성능에 관해서는 일반적으로 문자열 작업이 객체에 대한 일부 작업보다 훨씬 빠릅니다.