bbo
Version:
bbo is a utility library of zero dependencies for javascript.
33 lines (25 loc) • 721 B
JavaScript
import './is_object.js';
import './get_tag.js';
import isArray from './is_array.js';
import './is_function.js';
import isString from './is_string.js';
import clone from './clone.js';
import isSymbol from './is_symbol.js';
import map from './map.js';
import stringToPath from './string_to_path.js';
/* eslint-disable eqeqeq */
var INFINITY = 1 / 0;
function toKey(value) {
if (isString(value) || isSymbol(value)) {
return value;
}
var result = `${value}`;
return result == '0' && 1 / value == -INFINITY ? '-0' : result;
}
function toPath(value) {
if (isArray(value)) {
return map(value, toKey);
}
return isSymbol(value) ? [value] : clone(stringToPath(String(value)));
}
export default toPath;