前端进阶之路~

99 阅读1分钟

练习

  • 声明了一个空数组,里面数组没有内容,则输出的话是 undefined
let arr =[]
console.log(arr[0]) // undefined
  • 以下代码执行的结果是什么?(C)
let sum = 0
let arr = [10, 20, 30, 40]
for(let i = 0; i < arr.length; i++) {
 if (i === 2) {
  continue
 }
 sum += arr[i]
}
console.log(sum) // 70

选项:
A:0
B:60
C:70
D:100

解析:continue是跳出本次循环,继续下一次循环。
所以i === 2的时候arr[i]是30,退出了本次循环则没有执行sum+=的操作,故10+20+40=70
  • 请问下面哪个方法可以删除数组第一个元素?(A)
A:shift()
B:unshift()
C:pop()
D:push()
  • 请问下面哪个方法可以给数组头部追加元素?(B)
A:shift()
B:unshift()
C:pop()
D:push()
E:splice()
  • 数组排序 sort()方法
let arr = [1, 5, 2, 11, 18, 65, 23, 35]
let newArr = arr.sort() // 默认排序顺序是在将元素转换为字符串,然后比较它们的 UTF-16 代码单元值序列时构建的
console.log(newArr) // [1, 11, 18, 2, 23, 35, 5, 65]
  
let ascArr = arr.sort((a, b) => {
  return a - b  // 升序排列
})
console.log(ascArr) // [1, 2, 5, 11, 18, 23, 35, 65]
  
let desArr = arr.sort((a, b) => {
  return b - a  // 降序排列
})
console.log(desArr) // [65, 35, 23, 18, 11, 5, 2, 1]

一些小技巧

字符串转数字

let str = '1'
console.log(typeof +str) // number
console.log(typeof parsetInt(str)) // number
console.log(typeof Number(str)) // number