UNPKG

tools-for-js

Version:

基于babel构建的JavaScript前端工具库

66 lines (62 loc) 1.49 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getValByKey = void 0; exports.isJsonString = isJsonString; exports.jsonParse = jsonParse; exports.objectToQs = void 0; /******* * @description: 将对象转换为查询字符串 * @author: 琴时 * @param {*} obj * @return {String} * @example: objectToQs({a: 1, b: 2}) => 'a=1&b=2' */ var objectToQs = exports.objectToQs = function objectToQs(obj) { return Object.keys(obj).map(function (key) { return "".concat(encodeURIComponent(key), "=").concat(encodeURIComponent(obj[key])); }).join('&'); }; /******* * @description: 根据key获取对象值 * @author: 琴时 * @param {Object} obj * @param {String} key * @return {*} * @example: getValByKey({a: {b: {c: 1}}}, 'a.b.c') => 1 */ var getValByKey = exports.getValByKey = function getValByKey(obj, key) { var keys = key.split('.'); var value = obj; for (var i = 0; i < keys.length; i++) { value = value[keys[i]]; } return value; }; /******* * @description: 判断是否为json字符串 * @author: 琴时 * @param {String} str * @return {Object|Boolean} */ function isJsonString(str) { try { return Boolean(JSON.parse(str)); } catch (e) { return false; } } /******* * @description: 将字符串解析为对象 * @author: 琴时 * @param {String} str * @return {Object} */ function jsonParse(str) { try { return JSON.parse(str); } catch (e) { return {}; } }