网页环境之约 0.1.0
此包供浏览器页所处之境二事,皆只读:本地时区之偏与当前页所见之饼(cookie)。前者令豫言之客得以 Unix 毫秒换为用户本地之时而自定其式(豫言标准库无时区之数);后者用以读语言之好等由页中他处所书之小值。此包全然只读,不设饼,不改时区。客依此包,诸术皆当具。
诸术
读取本地时区偏移分钟:整数,返整数
参数乃 Unix 毫秒(自一九七零年一月一日零时世界协调时起,可负)。返浏览器所在时区于彼刻较世界协调时之偏分钟数,东正西负:北京时间(一九九二年起)恒为四百八十,日本五百四十,美国东部冬令时负三百、夏令时负二百四十,印度三百三十。依彼刻当地之夏令时与历史之规而算;历史上非整分之偏(如一九零零年前某些城邑)四舍五入为整分。毫秒之绝对值逾八点六四乘十之十五次方则发事故。
本地之时 = Unix 毫秒 + 偏分钟 × 六万,复以世界协调时之历拆为年月日时分秒即得;星期、月名与式,客自定之。(注:此与 JavaScript 之 getTimezoneOffset 其号相反。)
读取页面饼:字符串,返(爻、字符串)
读当前页所见之饼中指定名之值:名须全同(分大小写)。有则返(阳,值),值原样返,宿主不解码;无、浏览器禁饼,或此饼带 HttpOnly(脚本不可见)则返(阴,空文)。名空、逾二百五十六 UTF-16 码元,或含等号、分号、空白、控制字符则发事故。同名之饼有多(异路径)者,取浏览器所示之第一。
一致性之例
- 处东八区,读取本地时区偏移分钟(零)为四百八十;处美国东部,二零二六年一月一日之毫秒得负三百,七月一日之毫秒得负二百四十。
- 页面饼
yuyan_lang=wen; 别的=x:读取页面饼(“yuyan_lang”)为(阳,“wen”);读取页面饼(“yuyan”)为(阴,“”);读取页面饼(“别的”)为(阳,“x”)。 - 饼值为
a%20b则返(阳,“a%20b”),不解码。 - 读取页面饼(“a b”)、读取页面饼(“”):发事故。
界
此包不定:写饼与删饼、饼之属性、第三方之饼、时区之名与区域设置(Intl)、navigator.language。日期之式、星期与月名,属客之库。