标签:问题 ons enc red 生成 UNC script button ali
虽然不是专业写前端的,但是每隔半年(或者更久?)都会有html配色的需求,这种不常用的东西不想放到书签里面,但是又懒得找半天,干脆扔这里吧
coolors调色板
今天遇到一个奇怪的问题,尝试进行上面那个任务的时候遇到了奇怪的现象
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": """}) + ")'/>";
return buttons
在页面里我点blah这个按钮的时候,却出现了
Uncaught SyntaxError: Invalid or unexpected token这个错误,点开看看发现调用的函数变成了这样
blah({"a":"""})
很是费解,查了下发现了问题的症结,这块字符串首先会被html parser处理,所以"会被decode成",之后才会被javascript engine执行。
用简单粗暴的办法解决了这个问题
var need_content = encode(""")
var buttons = "<input type='button' value='blah' onclick='blah(\"" + need_content + "\")'/>";
return buttons
对需要的内容encode,然后传参。
其实稍微做一下变种就是我自己对我自己进行的一次xss,如果在模板引擎里面内容不进行正确的处理,内容就会被html parser解析,生成html内容,代码挂掉事小,安全事儿大。
标签:问题 ons enc red 生成 UNC script button ali
原文地址:https://www.cnblogs.com/exhausttolive/p/10523817.html