码迷,mamicode.com
首页 > 其他好文 > 详细

前端笔试题[1]

时间:2017-01-05 15:19:53      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:操作系统   map   style   time()   search   nes   格林威治   document   函数   

看到的笔试题,总结在这里吧!

1.运用JS设置cookie、读取cookie、删除cookie

    function setCookie (name, value) {
        let duringDay = 30;
        let exp = new Date();
        // setTime() 方法以毫秒设置 Date 对象。
        exp.setTime(exp.getTime() + duringDay*24*60*60*1000);
        // 防止Cookie中不允许需要保存的字符串中有“;”出现。有些操作系统,在解释中文的字符串时候常常会出现乱码的现象。避免储存数据中出现非英文字母、非数字的字符。运用escape编码
        document.cookie = name + ‘=‘ + escape(value) + ‘;expires=‘ + exp.toGTMString();
    }
    // setCookie(‘ga‘, ‘aaaaa‘);
    function getCookie (searchName) {
        let rsObj = {};
        let rsArray = document.cookie.split(‘;‘);

        rsArray.map((cv,index,array)=>{
            let item = cv.split(‘=‘);
            //去掉空格
            let name = unescape(item[0].split(‘ ‘).join(‘‘));
            let value = unescape(item[1]);
            rsObj[name] = value;
        });

        /* 或者利用正则

        let arr;
        let reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");
        if(arr=document.cookie.match(reg)) {
            return unescape(arr[2]);
        }
        else {
            return null;
        }
        */

        return rsObj[searchName];
    }
    // getCookie(‘ga‘);

    function deleteCookie(delName) {
        let exp = new Date();
        exp.setTime(exp.getTime() - 1);
        let val = getCookie(delName);
        if (val) {
            // toGMTString() 方法可根据格林威治时间 (GMT) 把 Date 对象转换为字符串,并返回结果。
            // Thu, 29 Dec 2016 10:48:00 GMT
            document.cookie = delName + ‘=‘ + val + ‘;expires=‘ + exp.toGTMString();
        }
    }
    // deleteCookie(‘ga‘);

2. 请编写一个JavaScript函数 parseQueryString,它的用途是把URL参数解析为一个对象,如:var url = “http://witmax.cn/index.php?key0=0&key1=1&key2=2″;

function parseQueryString () {
        let query = window.location.search.substring(1);
        let arr = query.split(‘&‘);
        let obj = {};
        arr.map((cv,index,array)=>{
            let item = cv.split(‘=‘);
            let name = decodeURIComponent(item[0]);
            let value = decodeURIComponent(item[1]);
            obj[name] = value;
        });
        return obj;
    }
    // let foo = parseQueryString();
    // console.log(foo);

 

前端笔试题[1]

标签:操作系统   map   style   time()   search   nes   格林威治   document   函数   

原文地址:http://www.cnblogs.com/Candybunny/p/6252376.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!