欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript實(shí)例--創(chuàng)建一個(gè)歡迎cookie

 更新時(shí)間:2022年01月26日 17:00:16   作者:程序員云錦?  
這篇文章主要介紹了JavaScript實(shí)例--創(chuàng)建一個(gè)歡迎cookie,

一、實(shí)例代碼

<!DOCTYPE html>
<html lang="en">
<head>
? <meta charset="UTF-8">
? <meta http-equiv="X-UA-Compatible" content="IE=edge">
? <meta name="viewport" content="width=device-width, initial-scale=1.0">
? <title>創(chuàng)建一個(gè)歡迎cookie</title>
</head>
<head>
? <script>
? ? function setCookie(cname, cvalue, exdays) {
? ? ? var d = new Date();
? ? ? d.setTime(d.getTime() + (exdays*24*60*60*1000));
? ? ? var expires = "expires=" + d.toGMTString();
? ? ? document.cookie = cname + "=" + cvalue + ";" + expires;
? ? ? /*
? ? ? document.cookie = "username=John Doe; expires=Sun, 31 Dec 2017 12:00:00 UTC";
? ? ? 通過把 cookie 名稱、cookie 值和過期字符串相加,該函數(shù)就設(shè)置了 cookie。
? ? ? */
? ? }
? ? function getCookie(cname) {
? ? ? var name = cname + "=";
? ? ? var ca = document.cookie.split(';');
? ? ? for(var i = 0; i < ca.length; i++) {
? ? ? ? var c = ca[i].trim();
? ? ? ? if(c.indexOf(name) == 0) {
? ? ? ? ? return c.substring(name.length, c.length);
? ? ? ? }
? ? ? ? return "";
? ? ? }
? ? }
? ? //檢查cookie是否已存在,即檢查頁面是否已經(jīng)訪問過
? ? function checkCookie() {
? ? ? var user = getCookie('username');
? ? ? if(user != "") {
? ? ? ? alert("歡迎 " + user + " 再次訪問");
? ? ? }else {
? ? ? ? user = prompt("請(qǐng)輸入你的名字:", "");//返回值 ?如果用戶單擊提示框的取消按鈕,則返回 null。如果用戶單擊確認(rèn)按鈕,則返回輸入字段當(dāng)前顯示的文本。
? ? ? ? if(user != "" && user != null) {
? ? ? ? ? setCookie("username", user, 30);//cookie 的名字(cname),cookie 的值(cvalue),以及知道 cookie 過期的天數(shù)(exdays)。
? ? ? ? }
? ? ? }
? ? }
? </script>
</head>
<body onload="checkCookie()">
? <!-- onload屬性通常寫在body標(biāo)簽中,一旦把頁面的圖像,css等文件加載完后,就立即執(zhí)行一段JavaScript代碼 -->
</body>
</html>

二、實(shí)例演示

因?yàn)樵O(shè)置了過期時(shí)間,所以關(guān)閉瀏覽器再打開還是會(huì)顯示訪問信息

查看cookie情況:

可以清楚的看見cookie的存儲(chǔ)

三、實(shí)例剖析

方法解析:

alert("歡迎 " + user + " 再次訪問");

alert(message) 方法用于顯示帶有一條指定消息和一個(gè) OK 按鈕的警告框。
message:要在 window 上彈出的對(duì)話框中顯示的純文本(而非 HTML 文本)

user = prompt("請(qǐng)輸入你的名字:", "");

prompt((text,defaultText) 方法用于顯示可提示用戶進(jìn)行輸入的對(duì)話框。
text:可選。要在對(duì)話框中顯示的純文本(而不是 HTML 格式的文本)。
defaultText:可選。默認(rèn)的輸入文本。

var d = new Date();
d.setTime(d.getTime() + (exdays*24*60*60*1000));

Date()方法返回當(dāng)前的日期時(shí)間

setTime(millisec)在1970年01月01日上添加毫秒數(shù),然后返回新的日期。
millisec:必需的,是一個(gè)毫秒值

getTime() 方法可返回距 1970 年 1 月 1 日之間的毫秒數(shù)。
setTimegetTime方法都與1970年1月1日有關(guān)

var expires = "expires=" + d.toGMTString();

toGMTString() 方法可根據(jù)格林威治時(shí)間 (GMT) 把 Date 對(duì)象轉(zhuǎn)換為字符串,并返回結(jié)果。

var ca = document.cookie.split(';');

split() 方法用于把一個(gè)字符串分割成字符串?dāng)?shù)組。

var c = ca[i].trim();

去除字符串的頭尾空格

if(c.indexOf(name) == 0)

indexOf() 方法可返回某個(gè)指定的字符串值在字符串中首次出現(xiàn)的位置。

return c.substring(name.length, c.length);

substring() 方法用于提取字符串中介于兩個(gè)指定下標(biāo)之間的字符。
substring() 方法返回的子串包括 開始 處的字符,但不包括 結(jié)束 處的字符。

實(shí)例執(zhí)行原理解析:

頁面js總共由三個(gè)函數(shù)組成,checkCookie(),setCookie()getCookie()

<body onload="checkCookie()"></body>這里在body的onload屬性上寫了一個(gè)函數(shù)

checkCookie(),當(dāng)頁面加載完后,便會(huì)自動(dòng)執(zhí)行checkCookie()函數(shù)里的代碼

首先通過getCookie()函數(shù)獲取用戶信息

getCookie函數(shù)中:
var ca = document.cookie.split(’;’);生成的ca字符串?dāng)?shù)組長(zhǎng)度為1,就是cookie的值,如果有多個(gè)cookie的話,中間會(huì)用;符號(hào)分割

然后通過判斷獲取的字符是否為空來判斷獲取結(jié)果,如果不為空則直接彈出彈窗歡迎用戶,如果為空說明還沒有訪問過,彈出彈窗讓用戶輸入信息記錄,然后調(diào)用setCookie()函數(shù)來記錄用戶信息

在setCookie()函數(shù)中設(shè)置cookie方式

document.cookie = “username=John Doe; expires=Sun, 31 Dec 2017 12:00:00 UTC”;
通過把 cookie 名稱、cookie 值和過期時(shí)間字符串相加,該函數(shù)就設(shè)置了 cookie。

到此這篇關(guān)于JavaScript實(shí)例--創(chuàng)建一個(gè)歡迎cookie的文章就介紹到這了,更多相關(guān)JavaScript創(chuàng)建一個(gè)歡迎cookie內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 在iFrame子頁面里實(shí)現(xiàn)模態(tài)框的方法

    在iFrame子頁面里實(shí)現(xiàn)模態(tài)框的方法

    今天小編就為大家分享一篇在iFrame子頁面里實(shí)現(xiàn)模態(tài)框的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • JavaScript漢諾塔問題解決方法

    JavaScript漢諾塔問題解決方法

    這篇文章主要介紹了JavaScript漢諾塔問題解決方法,涉及javascript遞歸調(diào)用操作的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-04-04
  • 微信小程序如何獲取地址

    微信小程序如何獲取地址

    這篇文章主要介紹了微信小程序獲取地址的具體方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-12-12
  • js中幾種循環(huán)的退出方式實(shí)例總結(jié)

    js中幾種循環(huán)的退出方式實(shí)例總結(jié)

    提到在一段程序中如果碰到需要終止,結(jié)束一個(gè)循環(huán),函數(shù)或者一段代碼,一般會(huì)想到以下這幾個(gè)關(guān)鍵字return、continue、break,這篇文章主要給大家介紹了關(guān)于js中幾種循環(huán)的退出方式,需要的朋友可以參考下
    2022-12-12
  • 基于javascript canvas實(shí)現(xiàn)五子棋游戲

    基于javascript canvas實(shí)現(xiàn)五子棋游戲

    這篇文章主要介紹了基于javascript canvas實(shí)現(xiàn)的五子棋游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • JavaScript 批量創(chuàng)建數(shù)組的方法

    JavaScript 批量創(chuàng)建數(shù)組的方法

    JavaScript有許多批量創(chuàng)建數(shù)組的方法,為了衡量它們的性能,我分別使用不同的方法創(chuàng)建一個(gè)長(zhǎng)度為100000的數(shù)組,且鍵和值相等,今天小編給大家分享基于js批量創(chuàng)建數(shù)組的方法,一起看看吧
    2017-03-03
  • 微信小程序?qū)崿F(xiàn)下載進(jìn)度條的方法

    微信小程序?qū)崿F(xiàn)下載進(jìn)度條的方法

    本篇文章主要介紹了微信小程序?qū)崿F(xiàn)下載進(jìn)度條的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-12-12
  • JavaScript實(shí)現(xiàn)星級(jí)評(píng)價(jià)效果

    JavaScript實(shí)現(xiàn)星級(jí)評(píng)價(jià)效果

    這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)星級(jí)評(píng)價(jià)效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • JavaScript字符串操作的四個(gè)實(shí)用技巧

    JavaScript字符串操作的四個(gè)實(shí)用技巧

    在制作前端頁面的過程中,經(jīng)常需要用到JavaScript進(jìn)行邏輯處理,很多時(shí)候都需要對(duì)字符串進(jìn)行操作,這篇文章主要給大家介紹了關(guān)于JavaScript字符串操作的四個(gè)實(shí)用技巧,需要的朋友可以參考下
    2021-07-07
  • JavaScript中解析JSON數(shù)據(jù)的三種方法

    JavaScript中解析JSON數(shù)據(jù)的三種方法

    這篇文章主要介紹了JavaScript中解析JSON數(shù)據(jù)的三種方法,本文講解了eval()方法、new Function方法、JSON.parse()方法等三種方法,需要的朋友可以參考下
    2015-07-07

最新評(píng)論