在项目中遇到的小知识点

一、在ios手机端,想要做成吸顶效果,但是使用position:sticky失效

解决办法 

加上position: -webkit-sticky即可兼容

二、es6中解构赋值的应用

// 1、对象的属性
const { a, b, c } = person 
// 相当于 
const a = person.a
const b = person.b
const c = person.c

// 2、数组的解构赋值
// 有匹配结果的,优先赋值匹配结果的值
var [a, b] = [1, 2] // a=1,b=2
var [a = 1, b = 2] = [5, 6] // a=5,b=6
var [a = 2, b = a] = [3, 4] // a=3,b=4
var [a = 2, b = 2] = [1] // a=1,b=1
var [a = 1, b = a] = [] // a=1, b=1
// 匹配结果是undefined时,默认值就是返回结果
var [a = 1] = [undefined] // a=1

三、Math常用的方法

1、向上取整   Math.ceil()

2、向下取整   Math.floor()

3、四舍五入   Math.round()

4、开平方      Math.sqrt()

5、获取最大值、最小值  Math.max()    Math.min()

6、0-1之间的随机数  Math.random()

   m-n 之间的随机数  Math.random()*(n-m)+m

四、数组常见的方法

1、在数组末尾添加新元素,并返回新数组,会改变原数组的大小

    let arr = [1,2,3]
    console.log(arr.push(4,5)) // [1,2,3,4,5]

2、删除并返回数组的最后一个元素,会改变原数组的大小

    let arr = [1,2,3]
    console.log(arr.pop()) // 3
    console.log(arr) // [1,2]

3、删除并返回数组的第一项,会改变原数组的大小

    let arr = [1,2,3]
    arr.shift() // 1
    console.log(arr) // [2,3]

 4、在数组的开头添加元素并返回新数组的长度,会改变原数组的大小

    let arr = [1,2,3]
    arr.unshift(0) // 4
    console.log(arr) // [0,1,2,3]

5、合并数组并返回一个新数组,不会改变原数组的大小

let arr = [1,2,3]
let arr1 = [4,5]
arr1.concat(arr) // [4,5,1,2,3]
console.log(arr) // [4,5]

6、数组转为字符串,默认连接字符是逗号","

let arr = [1,2,3]
arr.join() // 1,2,3
arr.join('') // 123

7、findIndex()    返回数组中满足要求的第一个元素的索引,不改变原数组的大小

 true返回该元素的索引值,false返回-1

var arr = [{id: 1},{id:2},{id:3},{id:4}]
arr.findIndex(i => i.id >= 3) // 2
// 返回arr中id大于等于3的对象的索引值

8、slice()  查找内容,不改变原数组

        array.slice(n, m),从索引n开始查找到m(不含m)

        array.slice(n)    省略第二个参数,查找到末尾

        array.slice(0)    输出原数组,数组克隆

9、splice()  对数组进行增删改

  //增加

  let arr = [1,2,3]

  arr.splice(0,'a')

  console.log(arr) // [1,2,3,0,'a']


  //删除

  let arr = [11,22,33,44,55,66]

  console.log(arr.splice(3,2)) // [44,55]

  console.log(arr.splice(3));//[44,55,66]

  //修改

  let arr = [11,22,33]

  arr.splice(1,2,'a','b')

  console.log(arr) // [11,'a','b']

 

五、input框的事件

          <input type="text"
                 v-model="name"
                 placeholder="请输入关键词"
                 maxlength="10"
                 @input="inputName()"
                 @change='changeName()'
          >

input事件在输入的过程中就执行,change事件在失去焦点时才执行

可以根据输入框的不同使用场景来选择使用哪个方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

•᷄ࡇ•᷅哼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值