JS对象&JSON&数组操作

2018-07-29  本文已影响19人  小7丁

一、JSON 格式的数据需要遵循什么规则?

二、遍历 company 对象,输出里面每一项的值

for (var i in company) {
  console.log(company[i])
}

三、分别举例说明数组方法push、pop、shift、unshift、join、splice、sort、join、reverse、concat的作用?

var arr = [3,4,1,2,7,6]
arr.push(9)//在数组的最后添加一个元素
console.log(arr)//[3, 4, 1, 2, 7, 6, 9]

var value= arr.pop()//把数组的最后一个元素弹出并返回
console.log(value)//9
console.log(arr)//[3,4,1,2,7,6]

arr.unshift('x')//在数组第一位新增一位
console.log(arr)//["x", 3, 4, 1, 2, 7, 6]

var val = arr.shift()//将数组第一位拿出来
console.log(val)// x
console.log(arr)//[3, 4, 1, 2, 7, 6]

var str = arr.join('-')//将数组变成字符串
console.log(str)//3-4-1-2-7-6

var arr2 = arr.splice(1,2)//从下标为1的元素开始,拿出来2个元素作为一个数组返回,原数组发生改变
console.log (arr2)//[4, 1]

arr.splice(1,0,8,9)//从下标为1的元素开始,拿出来0个元素,然后在1的后面加上8,9两个元素
console.log(arr)//[3, 8, 9, 2, 7, 6]

arr.sort()//会对数组进行排序
console.log(arr)//[2, 3, 6, 7, 8, 9]

arr.reverse()//会对数组经行倒序
console.log(arr)//[9, 8, 7, 6, 3, 2]

var arr3 = [4,2,7,1]
console.log(arr.concat(arr3))//拼接两个数组形成一个新数组[9, 8, 7, 6, 3, 2, 4, 2, 7, 1]

四、写一个函数,操作数组,返回一个新数组,新数组中只包含正数。

function filterPositive(arr){
  var newArr  = []
  for(var i = 0; i < arr.length; i++){
    if(typeof arr[i] === 'number' && arr[i] > 0){
      newArr.push(arr[i])
    }
  }
  return newArr
}
var arr = [3, -1, 2, '饥人谷', true]
var newarr = filterPositive(arr)
console.log(newarr)
console.log(arr)

五、分别举例说明ES5数组方法 indexOf、forEach、map、every、some、filter、reduce的用法?

var a = [2,6,4,-1,7,8]
//indexOf:索引出一个所需的元素
console.log(a.indexOf(2))//0

//forEach遍历所有的元素
a.forEach(function(value) {
  console.log( value + value)
})

//map遍历数组,回调函数返回值组成一个新数组返回
console.log(a.map(function(e) {
  return e * e
}))

//every是所有函数的每个回调函数都返回true的时候才会返回true,当遇到false的时候终止执行,返回false
a.every(function(val){
  return val >0
})

//some“存在”有一个回调函数返回true的时候终止执行并返回true,否则返回false
a.some(function(val){
  return val >0
})

//filter返回数组的一个子集,回调函数用于逻辑判断是否返回,返回true则把当前元素加入到返回数组中,false则不加(相当于过滤)
console.log(a.filter(function(e){
  return e%2 ===0
}))

//reduce遍历数组,调用回调函数,将数组元素组合成一个值
console.log(a.reduce(function(v1,v2) {
  return v1 + v2
}))
上一篇 下一篇

猜你喜欢

热点阅读