前端小知识10点(2020.12.27)

2021-01-04 10:42:07 浏览数 (1)

1、git如何打tag命令?

代码语言:javascript复制
git tag v0.0.1
git checkout v0.0.1
git push origin v0.0.1

2、Array.findIndex(callback)的作用是什么?

例:

代码语言:javascript复制
  const array=[1,2,3]
  console.log(array.findIndex((item)=>item>1)); //1,即返回index为1的元素

作用: 返回 array 中符合 callback 筛选条件的第一个 item 的 index

3、sass中的&是什么意思?

例:

代码语言:javascript复制
.father{
  &:hover{
    color:red;
  }
}

作用: & 表示父级选择器,即 father 类

4、Object.entries的作用?

例:

代码语言:javascript复制
const obj = { foo: 'bar', baz: 42 };
console.log(Object.entries(obj)); // [ ['foo', 'bar'], ['baz', 42] ]

作用: 将object解析成[key,value]的形式

5、typescript中setInterval的类型是什么?

代码语言:javascript复制
  useEffect(() => {
    let interId: NodeJS.Timer | null = null;
      interId = setInterval(() => {
        //do something
      }, 100);
    return () => {
        clearInterval(Number(interId));
    };
  }, []);

因为 typescript 是运行在 NodeJs环境中的, 所以直接用setInterval而不是window.setInterval的话, 则需要指明是NodeJS.Timer类型,而不是Number类型

6、sass中 & img 和 & > img 的区别是什么?

例:

代码语言:javascript复制
.father{
  & img{
  width:100px
}
& > img{
  width:200px
}
}

区别:

  • & img表示father类下的所有img元素
  • & > img表示father类下的子(下一级)img元素

7、git如何删除远程分支?

代码语言:javascript复制
git push origin --delete [branchname]

注意: 不要把远程的master/develop分支删了。。

8、git如何批量删除分支?

例: 删除有bugfix字段的分支名

代码语言:javascript复制
git branch | grep 'bugfix*' | xargs git branch -D

9、命名空间(namespace)编译成es5是什么?

代码语言:javascript复制
namespace Shape {
  const pi=Math.PI
  export function circle(r:number){
    return pi * r ** 2
  }
}

命名空间实际是一个函数自调用的闭包

代码语言:javascript复制
var Shape
(function (Shape) {
  var pi = Math.PI
  function circle(r){
    return pi = Math.pow(r,2)
  }
  Shape.circle = circle
})(Shape || (Shape = {}))

10、表达式3 ** 2=?

3 的平方:

代码语言:javascript复制
const a= 3 ** 2 //9

也就是

代码语言:javascript复制
const a= Math.pow(3,2) //9

0 人点赞