ES6新加入的内容(2)

2017-07-18  本文已影响0人  what__

default(默认值)

 function fun(a){
    a=a||0
    return a/5;
}
 console.log(fun(3))//这个有输出
 console.log(fun())//这个没有输出
function bar(a=0){
    //参数默认值  不传实参时形参会有个默认值
    return a/5;
}
console.log(bar())
console.log(bar(10))//两个都有输出

template 模板字符串

//ES5中写法
var html = "<div><p></p><span></span></dv>";

console.log(html);
//ES6中写法: ``
var str = ` <div>
                <p>${name}</p>
            </div>` ;```
            

### form

function fun(){
console.log(arguments);
//Array.prototype.slice.call(arguments)//将类数组转换为数组(ES5中)
let a=Array.from(arguments)//所有的类数组都可以用这种方法转为数组
a.push("d");
console.log(a)
}
fun("a","b","c")

let b = Array.from("hello")
console.log(b)```

//类数组:
document.querySelectorAll()
document.getElementsByTagName()
document.getElementsByClassName()
...

set & map

set & map
set 一种新的数据结构 和Array类似 但是并没有重复元素
add()向集合添加元素
delete()删除指定元素
has()判断集合是否包含指定元素
size 得到集合的长度
clear()清空集合
无length属性 有size属性
无下标概念 有has()

let s = new Set([2,22,2,2,3,3,3,4,5])

console.log(s,s.length,s.size)// length 为undefined  size为5
//无length属性 有size属性

let s2 = new Set();
    s2.add(1)//添加值得方法
    s2.add(1)
    s2.add(2)
    s2.add(2)
    console.log(s2,s2.size)// [1,2]  size为2  表明set中没有重复元素
    console.log(s2.has(1),s2.has(2),s2[1])//true true  undefined
    //  无下标概念,所以用下标取不到需要值   有has()
    s2.delete(1);//删除方法
    console.log(s2);
    s2.clear();//清空全部
    console.log(s2)

//遍历的方法
console.log(s.keys())//返回键
console.log(s.values())//返回值
console.log(s.entries())//返回键值对

let m = new Map()
m.set("name","sang")
console.log(m)
console.log(m.get("name"));

//Map  可以使用任意类型做键  哪怕是函数 对象
let a = 10;
m.set(a,"abc")
console.log(m)```
上一篇 下一篇

猜你喜欢

热点阅读