設定cookie
function cookie(key, value, options) {
let days
let time
let result
// A key and value were given. Set cookie.
if (arguments.length > 1 && String(value) !== '[object Object]') {
// Enforce object
options = Object.assign({}, options)
if (value =https://www.cnblogs.com/restart77/p/== null || value === undefined) {
options.expires = -1
}
if (typeof options.expires ==='number') {
days = options.expires * 24 * 60 * 60 * 1000
time = options.expires = new Date()
time.setTime(time.getTime() + days)
}
value = https://www.cnblogs.com/restart77/p/String(value)
return (document.cookie = `${encodeURIComponent(key)}=${
options.raw ? value : encodeURIComponent(value)
}
${options.expires ? `; expires=${options.expires.toUTCString()}` :''}
${options.path ? `; path=${options.path}` : ''}
${options.domain ? `; domain='${options.domain}` : ''}
${options.secure ? '; secure' : ''}`)
}
// Key and possibly options given, get cookie
options = value || {}
const decode = options.raw
? function(s) {
return s
}
: decodeURIComponent
return (result = new RegExp(`(?:^|; )${encodeURIComponent(key)}=([^;]*)`).exec(document.cookie))
? decode(result[1])
: null
}
/** * getCookie 獲取cookies * @param {String} key * @param {String} defultValue */
function getCookie() {
const args = Array.prototype.slice.call(arguments)
const key = args.length > 0 ? args[0] : null
const defaultValue = https://www.cnblogs.com/restart77/p/args.length > 1 ? args[1] :''
// const cookieValue =https://www.cnblogs.com/restart77/p/cookie(key)
let result = new RegExp(`(?:^|; )${encodeURIComponent(key)}=([^;]*)`).exec(document.cookie)
result = result ? result[1] : null
try {
return result === null ? defaultValue : result
} catch (error) {
throw error
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/148162.html
標籤:JavaScript
上一篇:常用js封裝
下一篇:分頁請求下一條資料
