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

2019-03-13 技术日志

时间:2019-03-13 18:18:46      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:问题   ons   enc   red   生成   UNC   script   button   ali   

html调色板

虽然不是专业写前端的,但是每隔半年(或者更久?)都会有html配色的需求,这种不常用的东西不想放到书签里面,但是又懒得找半天,干脆扔这里吧
coolors调色板


Javascript convert string array to integer array

今天遇到一个奇怪的问题,尝试进行上面那个任务的时候遇到了奇怪的现象

var l = ["12", "13", "14", "15"]
l.map(parseInt)
>>> [12, Nan, 1, 1]

找了下parseInt的定义,parseInt有两个参数,第二个参数是radix,由于我要的是十进制的结果
自然正确的转法应该是

l.map(e => parseInt(e, 10))

一个"引发的问题

修改一个jsp文件的时候遇到的一个问题,抽象一下我写了大概这么一段代码

var buttons = "<input type='button' value='blah' onclick='blah(" + JSON.stringify({"a": "&quot;"}) + ")'/>";
return buttons

在页面里我点blah这个按钮的时候,却出现了
Uncaught SyntaxError: Invalid or unexpected token这个错误,点开看看发现调用的函数变成了这样

blah({"a":"""})

很是费解,查了下发现了问题的症结,这块字符串首先会被html parser处理,所以&quot;会被decode成",之后才会被javascript engine执行。
用简单粗暴的办法解决了这个问题

var need_content = encode("&quot;")
var buttons = "<input type='button' value='blah' onclick='blah(\"" + need_content + "\")'/>";
return buttons

对需要的内容encode,然后传参。

其实稍微做一下变种就是我自己对我自己进行的一次xss,如果在模板引擎里面内容不进行正确的处理,内容就会被html parser解析,生成html内容,代码挂掉事小,安全事儿大。

2019-03-13 技术日志

标签:问题   ons   enc   red   生成   UNC   script   button   ali   

原文地址:https://www.cnblogs.com/exhausttolive/p/10523817.html

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