UNPKG

phpksort

Version:

a php ksort function written by javascript

70 lines (61 loc) 1.9 kB
'use strict' var _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function (obj) { return typeof obj } : function (obj) { return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj } module.exports = function _phpCastString(value) { // original by: Rafał Kukawski // example 1: _phpCastString(true) // returns 1: '1' // example 2: _phpCastString(false) // returns 2: '' // example 3: _phpCastString('foo') // returns 3: 'foo' // example 4: _phpCastString(0/0) // returns 4: 'NAN' // example 5: _phpCastString(1/0) // returns 5: 'INF' // example 6: _phpCastString(-1/0) // returns 6: '-INF' // example 7: _phpCastString(null) // returns 7: '' // example 8: _phpCastString(undefined) // returns 8: '' // example 9: _phpCastString([]) // returns 9: 'Array' // example 10: _phpCastString({}) // returns 10: 'Object' // example 11: _phpCastString(0) // returns 11: '0' // example 12: _phpCastString(1) // returns 12: '1' // example 13: _phpCastString(3.14) // returns 13: '3.14' var type = typeof value === 'undefined' ? 'undefined' : _typeof(value) switch (type) { case 'boolean': return value ? '1' : '' case 'string': return value case 'number': if (isNaN(value)) { return 'NAN' } if (!isFinite(value)) { return (value < 0 ? '-' : '') + 'INF' } return value + '' case 'undefined': return '' case 'object': if (Array.isArray(value)) { return 'Array' } if (value !== null) { return 'Object' } return '' case 'function': // fall through default: throw new Error('Unsupported value type') } } // # sourceMappingURL=_phpCastString.js.map