踩坑记:02

63 阅读1分钟

踩坑记:第二回合

  • 函数内部若依赖于一些外部变量,那么函数提升可能会带来一些问题
  • 原始类型是没有属性和方法的,但大部分原始值仍然表现得像有一样。当在原始值上访问属性时,JavaScript 自动将值装入包装器对象中,并访问该对象上的属性。例如,"foo".includes("f") 隐式创建了一个 String 包装对象,并在该对象上调用 String.prototype.includes()。
  • BooleanNumberBigIntStringSymbolnew调用时,返回一个与原始值对应的包装对象而非原始值本身
  • 隐式类型转换依赖于原始值包装对象
  • 包装对象浅等于对应的原始值
  • 不存在用来包装undefinednull的对象,故从它们身上访问属性或方法时,会抛出TypeError
  • github pages 默认使用 jekyll 进行部署,jekyll 会忽略_开头的文件,需要添加_config.yml文件指定要包含的文件
  • _config.yml要放到 github pages 的部署目录下
  • 也可以在部署目录下生成一个.nojekyll文件,以关闭 jeklly 部署
  • CssModule 会编译伪类中的类名、:global指令里的类名不会被编译
  • touchmove事件在移动端(IOS 上没有)有一个默认行为,input 的内容可以被滑动,可以使用pointer-eventstouch-action禁用它
  • form 标签可以用FormData类和formdata事件收集其中的数据
  • input[type=reset]可以将 form 中的 input 的 value 还原为其 value 属性上写定的值
  • 每当组件函数执行时,调用的 hook 数必须一致
  • border-box 的使用场合:需要给子元素设置 padding、border 或百分比的宽高
  • JS 可以使用getComputedStyle()访问到 CSS 为元素设置的样式