提取当前域的Cookie数据,并存储为对象数组结构

    技术2026-08-15  12

    涉及数组的map经典用法, 不一样的数组解构用法,

    精简的动态属性对象用法

    提取当前域名的Cookie数据

    let result = document.cookie, 获取到的数据结构如下

    "_ga=GA1.2.508865395.1567870094; gr_user_id=06e98b97-09a2-4889-9b94-42f01869a72e; _gid=GA1.2.195245427.1593880848; Hm_lvt_93bbd335a208870aa1f296bcd6842e5e=1593880848; Hm_lpvt_93bbd335a208870aa1f296bcd6842e5e=1593881432; gr_session_id_89669d96c88aefbc=7bf7a940-7420-40e5-92fa-56c70842c6ea; gr_session_id_89669d96c88aefbc_7bf7a940-7420-40e5-92fa-56c70842c6ea=true"

    第1次分割字符串,分割分隔标记为 ;

    result = result.split(';')

    ["_ga=GA1.2.508865395.1567870094", " gr_user_id=06e98b97-09a2-4889-9b94-42f01869a72e", " _gid=GA1.2.195245427.1593880848", " Hm_lvt_93bbd335a208870aa1f296bcd6842e5e=1593880848", " Hm_lpvt_93bbd335a208870aa1f296bcd6842e5e=1593881432", " gr_session_id_89669d96c88aefbc=7bf7a940-7420-40e5-92fa-56c70842c6ea", " gr_session_id_89669d96c88aefbc_7bf7a940-7420-40e5-92fa-56c70842c6ea=true"]

    第2次分割字符串,分割分隔标记为 =

    result = result.map(i=>i.split('=')), 结果为一个二维数组

    [ [ "_ga", "GA1.2.508865395.1567870094" ], [ " gr_user_id", "06e98b97-09a2-4889-9b94-42f01869a72e" ], [ " _gid", "GA1.2.195245427.1593880848" ], [ " Hm_lvt_93bbd335a208870aa1f296bcd6842e5e", "1593880848" ], [ " Hm_lpvt_93bbd335a208870aa1f296bcd6842e5e", "1593881432" ], [ " gr_session_id_89669d96c88aefbc", "7bf7a940-7420-40e5-92fa-56c70842c6ea" ], [ " gr_session_id_89669d96c88aefbc_7bf7a940-7420-40e5-92fa-56c70842c6ea", "true" ] ]

    将二维数组转换成对象数组,形如[{key1:val1},{key2:val2}]

    result = reuslt.map(([key,value]) => ({ [key] :value }) )

    语法分解:([key,value]) 为数组解构语法; ({ [key] :value }) 为动态属性的对象语法

    [ { "_ga": "GA1.2.508865395.1567870094" }, { " gr_user_id": "06e98b97-09a2-4889-9b94-42f01869a72e" }, { " _gid": "GA1.2.195245427.1593880848" }, { " Hm_lvt_93bbd335a208870aa1f296bcd6842e5e": "1593880848" }, { " Hm_lpvt_93bbd335a208870aa1f296bcd6842e5e": "1593881432" }, { " gr_session_id_89669d96c88aefbc": "7bf7a940-7420-40e5-92fa-56c70842c6ea" }, { " gr_session_id_89669d96c88aefbc_7bf7a940-7420-40e5-92fa-56c70842c6ea": "true" } ]
    Processed: 0.008, SQL: 9