IT story

JavaScript / jQuery에서 객체를 쿼리 문자열로 직렬화

hot-time 2020. 6. 12. 19:28
반응형

JavaScript / jQuery에서 객체를 쿼리 문자열로 직렬화


이 질문에는 이미 답변이 있습니다.

문자열 형식으로 쿼리하기 위해 객체를 직렬화하는 방법에 대한 정보를 찾으려고하지만 모든 검색에서 다른 방법 (string / form / whatever to JSON)에 대한 결과가 익사합니다.나는 가지고있다

{ one: 'first', two: 'second' }

그리고 나는 원한다

?one=first&two=second

이를 수행하는 좋은 방법이 있습니까? 나는 플러그인이나 whatnots를 신경 쓰지 않는다-내가 찾은 코드가 플러그인이 아니라면 어쨌든 하나에 다시 쓸 것이다.


당신이 원하는

$.param()

:

http://api.jquery.com/jQuery.param/

특히, 당신은 이것을 원합니다 :

var data = { one: 'first', two: 'second' };
var result = $.param(data);

이런 식으로 주어지면 :

{a: 1, b : 23, c : "te!@#st"}

$.param

이것을 반환합니다 :

a=1&b=23&c=te!%40%23st

빠른 비 JQuery 기능

function jsonToQueryString(json) {
    return '?' + 
        Object.keys(json).map(function(key) {
            return encodeURIComponent(key) + '=' +
                encodeURIComponent(json[key]);
        }).join('&');
}

이것은 배열이나 중첩 된 객체를 처리하지 않습니다.


다른 옵션은

node-querystring

일 수 있습니다 .

npm

에서 모두 사용할 수 있으므로

bower

사용하고 있습니다.


또는 YUI에는

http://yuilibrary.com/yui/docs/api/classes/QueryString.html#method_stringify가

있습니다.예를 들면 다음과 같습니다.

var data = { one: 'first', two: 'second' };
var result = Y.QueryString.stringify(data);

참고 URL :

https://stackoverflow.com/questions/3308846/serialize-object-to-query-string-in-javascript-jquery

반응형