当前浏览器不支持canvas,请更换浏览器后再试

ECMA6--字符串/数组

字符串

新增两个字符串方法

startsWith()

字符串首开通检测

endsWith()

后缀名检测

includes ()

字符串中是否包含

字符串模板

数组

let title = '头部'
let content = '内容'
let a  = '<div>\
    <p>'+title+'<p>\
    <span>'+content+'</span>\
    </div>';
console.log(a)

let b = `<div>
    <p>${ title }<p>
    <span>${ content }</span>
    </div>`
    console.log(b);
  1. 将内容可以直接放入字符串里

  2. 可以换行

  3. map--映射

  4. reduce--汇总

  5. filter--过滤器

  6. forEach--迭代(循环)

map

  • 一个对一个
  • 格式:数组
let arr=  [55 ,30,61,25,99,55]
let res = arr.map(item=>item>=60?'及格':'不及格')
console.log(arr,res)

reduce

  • 一堆出来一个,汇总
  • tmp: 上一个的和
  • item 本身
  • index下标
let arr1 = [54,45,88,86]
let arr2 = arr1.reduce(function(tmp,item,index){
    return tmp + item
})

var result = arr1.reduce((tmp,item,index)=>{
    if(index != arr1.length - 1){
        return tmp + item
    }else{
        return (tmp + item)/arr1.length
    }
})
//alert(result)//68.25

// this 指向window
let result2 = arr1.reduce((tmp,item,index)=>{

    if(index != this.length - 1){
        return tmp + item
    }else{
        return (tmp + item) / this.length
    }
})
alert(result2)//273

filter

let arr1 = [54,45,88,86]
// 注:这里的%必须是这个
let go = arr1.filter(item=>{
    if(item % 3 == 0){
        return true
    }else{
        return false
    }
})
alert(go)

let b = arr1.filter(item=>{item % 3 == 0)
alert(b)


let arr = [
    {title:'2',price:1},
    {title:'3',price:5},
    {title:'4',price:55},
    {title:'5',price:2}
]
let a = arr.filter(function(json){
    return  json.title == 4
})
console.log(a)

posted @ 2019-01-10 22:08  清如  阅读(191)  评论(0编辑  收藏  举报