1. 程式人生 > >js 物件轉url引數

js 物件轉url引數

很多時候都需要在url上拼接引數
對於引數比較少的時候,用字串拼接是可以的,而且比較快和直觀
但是引數一旦多起來,字串就會變得很長而且不美觀
es6出來之後可以用模板字串拼接
但是對於有很多引數的時候,還是不夠直觀
於是有了以下的urlEncode函式

// es6 模板字串
var name = 'charming'
var id = 1
var a = `www.website.com?name=${name}&id=${id}`
console.log(a) //www.website.com?name=charming&id=1

// urlEncode
var urlEncode = function(param, key, encode) { if (param==null) return ''; var paramStr = ''; var t = typeof (param); if (t == 'string' || t == 'number' || t == 'boolean') { paramStr += '&' + key + '=' + ((encode==null||encode) ? encodeURIComponent(param) : param); } else
{ for (var i in param) { var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i) paramStr += urlEncode(param[i], k, encode) } } return paramStr; } var obj = { name: 'charming', id: 1 } var s = urlEncode(obj) console.log(s.slice(1
))// name=charming&id=1 // 注意需要切掉第一個&符號

相關推薦

js 物件url引數

很多時候都需要在url上拼接引數 對於引數比較少的時候,用字串拼接是可以的,而且比較快和直觀 但是引數一旦多起來,字串就會變得很長而且不美觀 es6出來之後可以用模板字串拼接 但是對於有很多引數的時候,還是不夠直觀 於是有了以

JS物件URL引數(原生JS和jQuery兩種方式)

現在的JS框架將ajax請求封裝得非常簡單,例如下面: [javascript] view plain copy $.ajax({           type: "POST",           url: "some.php",           d

關於 js 物件 字串 和 深拷貝 的探討

隨著更多語言的支援 **json** 作為資料傳輸和儲存的媒體,已經非常成熟且應用廣泛。卻存在致命硬傷,不攜帶 **物件方法** 。在資料傳輸和儲存中,這是恰當的和合理的。 但是在更多的應用場景中,又是無奈的。 專案需要,簡單的提了個思路,將物件轉換為顯示宣告形式的字串例如: var person

js物件陣列

  先給個案例體驗下   對於像這樣的一個物件,把它轉換成一個數組,我們在開發中應該會遇到過,   {'未完成':0, '已完成':1, '待確認':2, '已取消':-1}轉為[{"未完成":0},{"已完成":1},{"待確認":2},{"已取消":-1}]  我們

js實現對url引數中數字字母的簡單加解密

function compile(code) { var c=String.fromCharCode(code.charCodeAt(0)+code.length); for

jsonurl引數

<script src="js/jquery-1.8.0.min.js"></script> <script language="JavaScript" type="text/javascript"> var parseParam = f

分享一個好用的函式吧,將js中的物件url引數

這個函式呢是自己在寫基於Vue+ElementUI管理後臺時用到的,,下面列出來兩種使用方式: 最普通的,封裝一個js函式 /** * 物件轉url引數 * @param {*} data */ function urlencode (data

js分解url引數(正則表示式,split比較)(面向物件-極簡主義法應用)

一:正則表示式法 <script type="text/javascript"> function getQueryString(url) { if(url) { url=url.substr(url.indexOf("?")+1); /

JS funtion()中URL不跳後臺action問題

child preview span -1 java lis var pin typelist JS funtion()中URL不跳轉後臺action問題 今天遇到一個百思不得其解的問題,到現在解決了,但是仍然不知道所以然(估計是因為域名不一致導致的),記錄一下 $.

js物件屬性駝峰式命名(帶數字)下劃線命名

將類似於 info 格式轉化為 info2  var info = { id: 1, id1: 2, userName1: '劉玄德', userName2: '劉玄德', userName3: '大哥',

URL引數獲取/

JS中對URL進行轉碼與解碼 1.escape 和 unescape escape()不能直接用於URL編碼,它的真正作用是返回一個字元的Unicode編碼值。 採用unicode字符集對指定的字串除0-255以外進行編碼。所有的空格符、標點符號、特殊字元以及更多有聯絡非ASCII字元都將被轉化成%x

js物件,字串互

1 2 3 4 五 6 7 var obj={  webName:"指令碼之家",  url:"jb51.net",  age:"2" } var str=JSON.stringify(obj) console.log(str

js 獲取URL引數亂碼解決

地址 http://localhost:8080/uploadFile.html?contractNo="2018-塑-崇-0089" /** * 獲取URL引數並解碼返回 * @param name * @returns */ function getUrlParam2(name)

JS獲取URL引數,設定URL引數

//獲取url中的引數 function getURLArg(url,name) {     var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //構造一個含有目標引數的正則表示式物件 &nbs

JS物件和Java物件成JSON

一.Json物件與Json字串的轉化 1.jQuery外掛支援的轉換方式:   $.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以將json字串轉換成json物件   2.瀏覽器支援的轉換方式(Firefox,chrome,oper

js利用正則表示式獲取 / 設定URL引數

function getUrlParam(url, key) {      var reg = new RegExp("[?&]" + key + "=([^&]+)", "gmi");      if (reg.test(

js物件當做引數傳遞

最近的專案都使用bootstrapTable來建立table,bootstrapTable確實非常好用。獲取行物件可以直接取row,但是如何把row作為一個引數傳到另一個js方法裡面呢,直接傳row, 瀏覽器解析的時候就會變成這樣 , 然後就會拋錯 。 那麼正確的傳參應該怎麼

js中獲取url引數的方法

JS中獲取url中引數的方法(帶中文的也可以): function getQueryString(name) { var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i'); var r =

輸入任意物件,任意引數路徑能獲取對應的值的 js 函式

var obj = { selector: { to: { toutiao: "FE Coder"} }, target: [ 1, 2, { name: 'byted' } ] }; function get(data, ...args) {

js獲取url引數方法

parseQueryStr("http://xxx.vom?usename=234&ages=32&school=北京大學") function parseQueryStr(query