zoukankan      html  css  js  c++  java
  • cookie初探——封装和使用cookie(内含彩蛋)

    一、什么是cookie?

    页面用来保存信息,如:自动登录、记住用户名
    二、cookie的特性
    1.同一个网站中所有页面共享一套cookie
    2.数量、大小有限
    3.有过期时间
    三、js中使用cookie
    document.cookie
    四、cookie的使用
    1.设置cookie:
    格式:名字=值(多条不会覆盖)
    过期时间:expires = 时间
    封装函数
    2.读取cookie(字符串的分割)

    3.删除cookie(已经过期)

     五、封装cookie

        //创建cookie
        function setCookie(name,value,expiresDay) {
            var oDay = new Date();
            oDay.setDate(oDay.getDate() + expiresDay);
    
            document.cookie = name + ' = ' + value + '; expires = ' + expiresDay;
        }
    
        //得到cookie
        function getCookie(name) {
            var arr = document.cookie.split('; '); //cookie间是用;+空格隔开的
            for (let i = 0; i < arr.length; i++) {
                var arr2 = arr[i].split('=');
                if (arr2[0] == name) {
                    return arr2[1];
                }
            }
            return '';
        }
    
        //删除cookie
        function removeCookie(name) {
            setCookie(name,1,-1); //-1天后过期,则浏览器立马删除
        }
    
        setCookie('userName','blue',100);

    六、cookie简单示例(网页登录中应用cookie)

    JavaScript:

        window.onload = function() {
            var oForm = document.getElementById('form1');
            var oUser = document.getElementsByName('user')[0];
    
            oForm.onsubmit = function() {
                setCookie('user', oUser.value, 14);
            }
    
            oUser.value = getCookie('user');
        }    

    html:

    <form id="form1" action="http://www.baidu.com/">
        用户名:<input type="text" name="user"> <br>
        密码:<input type="password" name="password"> <br>
        <input type="submit" value="登录">
    </form>

    七、彩蛋

    表单提交到了百度的服务器,于是在百度首页的console里看到如下文字:

    嗯,好大一个蛋~

  • 相关阅读:
    Leetcode题目:Remove Duplicates from Sorted List
    Leetcode题目:Lowest Common Ancestor of a Binary Search Tree
    Leetcode题目:Ugly Number
    Leetcode题目:Remove Linked List Elements
    Leetcode题目:Count and Say
    6-3 事务
    6-1 视图
    5-2 pymysql模块
    5-1 图形工具Navicat
    4-3 多表查询
  • 原文地址:https://www.cnblogs.com/bbcfive/p/10090238.html
Copyright © 2011-2022 走看看