MCPcopy Create free account
hub / github.com/ccxt/ccxt / stringify

Function stringify

ts/src/static_dependencies/qs/stringify.js:45–142  ·  view source on GitHub ↗
( // eslint-disable-line func-name-matching
    object,
    prefix,
    generateArrayPrefix,
    strictNullHandling,
    skipNulls,
    encoder,
    filter,
    sort,
    allowDots,
    serializeDate,
    formatter,
    encodeValuesOnly,
    charset
)

Source from the content-addressed store, hash-verified

43};
44
45var stringify = function stringify( // eslint-disable-line func-name-matching
46 object,
47 prefix,
48 generateArrayPrefix,
49 strictNullHandling,
50 skipNulls,
51 encoder,
52 filter,
53 sort,
54 allowDots,
55 serializeDate,
56 formatter,
57 encodeValuesOnly,
58 charset
59) {
60 var obj = object;
61 if (typeof filter === 'function') {
62 obj = filter(prefix, obj);
63 } else if (obj instanceof Date) {
64 obj = serializeDate(obj);
65 } else if (generateArrayPrefix === 'comma' && isArray(obj)) {
66 obj = obj.join(',');
67 }
68
69 if (obj === null) {
70 if (strictNullHandling) {
71 return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder, charset) : prefix;
72 }
73
74 obj = '';
75 }
76
77 if (typeof obj === 'string' || typeof obj === 'number' || typeof obj === 'boolean' || utils.isBuffer(obj)) {
78 if (encoder) {
79 var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder, charset);
80 return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults.encoder, charset))];
81 }
82 return [formatter(prefix) + '=' + formatter(String(obj))];
83 }
84
85 var values = [];
86
87 if (typeof obj === 'undefined') {
88 return values;
89 }
90
91 var objKeys;
92 if (isArray(filter)) {
93 objKeys = filter;
94 } else {
95 var keys = Object.keys(obj);
96 objKeys = sort ? keys.sort(sort) : keys;
97 }
98
99 for (var i = 0; i < objKeys.length; ++i) {
100 var key = objKeys[i];
101
102 if (skipNulls && obj[key] === null) {

Callers 1

stringify.jsFile · 0.70

Calls 4

StringClass · 0.85
pushToArrayFunction · 0.70
formatterFunction · 0.50
sortMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…