Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x | /** * 解析 location.search 为一个JSON对象 * - 或者获取其中某个参数 * @method location/getQuery * @param {String} url URL字符串 * @param {String} name 参数名称 * @returns {Object|String} query对象 | 参数值 * @example * var $getQuery = require('@spore-ui/kit/packages/location/getQuery'); * var url = 'http://localhost/profile?beijing=huanyingni'; * console.info( $getQuery(url) ); * // {beijing : 'huanyingni'} * console.info( $getQuery(url, 'beijing') ); * // 'huanyingni' */ var cache = {}; function getQuery(url, name) { var query = cache[url] || {}; Eif (url) { var searchIndex = url.indexOf('?'); Eif (searchIndex >= 0) { var search = url.slice(searchIndex + 1, url.length); search = search.replace(/#.*/, ''); var params = search.split('&'); params.forEach(function (group) { var equalIndex = group.indexOf('='); Eif (equalIndex > 0) { var key = group.slice(0, equalIndex); var value = group.slice(equalIndex + 1, group.length); query[key] = value; } }); } cache[url] = query; } Iif (!name) { return query; } return query[name] || ''; } module.exports = getQuery; |