JS

132 阅读2分钟
  1. 函数用argments对入参赋值时,入参为undefined时赋值操作无效
  2. null转number->0,undefined转number->NaN
  3. 改变数组length可以改变数组长度
  4. Object.is() 和===区别:0,-0,+0 和 NaN的判断
  5.  ++在被操作对象上先自加 再赋值
  6.  null转数字为0
  7.  双等:有NaN就false,有布尔转数字,有字符串有数字转数字,null undefined不转但他们俩相等
  8.  JSON.stringify规则: NaN和Infinity 返回;null function、symbol返回undefined; 数组里面的undefined,function,symbol返回null
  9.  ${x} 可取出数组里面的值 
  10. map和forEach无法遍历undefined
  11.  array delete之后留下一个empty 
  12. Math.min()和Math.max()表示-Infinity Infinity 
  13. sort()方法会改变原始数组且默认排序数组按第一个从小到大排
  14. 回调的方法里面无法捕获error,所以很多都在参数中先传入一个err,再传data
  15. 在react中插入dom元素 => dangerouslySetInnerHtml   有可能会引发xss攻击
  16. xss攻击 : 跨站脚本攻 击是指通过存在安全漏洞的Web⽹站注册⽤户的浏览器内运⾏⾮法的⾮本站点HTML标签或 JavaScript进⾏的⼀种攻击。防御手段:内容安全策略 (CSP)CSP 本质上就是建⽴⽩名单,开发者明确告诉浏览器哪些外部资源可以加载和执⾏。我们只 需要配置规则,如何拦截是由浏览器⾃⼰实现的。我们可以通过这种⽅式来尽量减少 XSS 攻 击;转义字符 如
    ;HttpOnly Cookie 这是预防XSS攻击窃取⽤户cookie最有效的防御⼿段。Web应 ⽤程序在设置cookie时,将其 属性设为HttpOnly,就可以避免该⽹⻚的cookie被客户端恶意JavaScript窃取,保护⽤户 cookie信息 response.addHeader("Set-Cookie", "uid=112; Path=/; HttpOnly")