js学习note7 2道掉坑里的Test

一不小心就掉坑里了!!!∑(゚Д゚ノ)ノ

NO1:数组 [[1, 2, 3], [400, 500, 600], '-'],如何通过索引取到500这个值。

最开始想通过用concat把数组拆分成单一元素组成的数组 [1, 2, 3, 400, 500, 600, '-'],然后通过索引引出500,too young,too simple ┐( ̄ー ̄)┌ ,发现concat并不能把多维数组变成一维数组。

// 方法一:将数组转为字符串再转为数组
let arr = [[1, 2, 3], [400, 500, 600], '-']
function arrTest (arr) {
  let newArr = arr.join(',').split(",")
  // arr.join(',') → 1,2,3,400,500,600,-
  // newArr → [ '1', '2', '3', '400', '500', '600', '-' ]
  let x = newArr[4] // 500
  console.log(x)
}
arrTest (arr)
// 方法二:递归
var arr = [[1, 2, 3], [400, 500, 600], '-']
var newArr = []
function fun(arr){
  for(var i=0;i
// join()方法用于把数组中的所有元素放入一个字符串
// arrayObject.join(指定要使用的分隔符)

// split()用于把一个字符串分割成字符串数组
// stringObject.split(separator,howmany)
// 把空字符串 ("") 用作 separator,那么 stringObject 中的每个字符之间都会被分割。

// 方法忘了,查查看看栗子,很清晰,哈哈哈~
let str="How are you doing today?"
function strTest (str) {
  let newStr1
  let newStr2
  let newStr3
  newStr1 = str.split(" ") // [ 'How', 'are', 'you', 'doing', 'today?' ]
  newStr2 = str.split("") // [ 'H', 'o', 'w', ' ', 'a', 'r', 'e', ' ', 'y', 'o', 'u', ' ', 'd', 'o', 'i', 'n', 'g', ' ', 't', 'o', 'd', 'a', 'y', '?']
  newStr3 = str.split(" ",3) // [ 'How', 'are', 'you' ]
  console.log(newStr1, newStr2, newStr3)
}
strTest (str)

NO2:数组 ['小明', '小红', '大军', '阿黄'],请排序后显示:欢迎XXX,XXX,XXX和XXX同学!

let arr = ['小明', '小红', '大军', '阿黄']
function peopleArr (arr) {
  let sortArr = arr.sort() // [ '大军', '小明', '小红', '阿黄' ] 
  let newArr1 = sortArr.slice(0, arr.length-1).join(',')
  // sortArr.slice(0, arr.length-1) → [ '大军', '小明', '小红' ] 
  // newArr1 → 大军,小明,小红
  let newArr2 = sortArr[arr.length-1] // 阿黄
  console.log('欢迎' + newArr1 + '和' + newArr2 + '同学!') // 欢迎大军,小明,小红和阿黄同学!
}
peopleArr (arr)

踩坑小记2018/05/14

你可能感兴趣的:(js学习note7 2道掉坑里的Test)