看下面的面试题
我们不能自定义数组里面的key
map数据结构就解决了这一问题,map可以自定义数组的key
set
javascript"><script>
const m=new Map([
["name","aa"],
["age",'18'],
["name:a","age:b"]
])
m.set([function(){return "12"}],[function(){return "15"}])
console.log(m.get("age"));
console.log(m);
</script>
get
javascript"><script>
const m=new Map([
["name","aa"],
["age",'18'],
["name:a","age:b"]
])
console.log(m.get("age"));
console.log(m);
</script>
delete
javascript"><script>
const m=new Map([
["name","aa"],
["age",'18'],
["name:a","age:b"]
])
m.delete('age')
console.log(m);
</script>
clear
javascript"><script>
const m=new Map([
["name","aa"],
["age",'18'],
["name:a","age:b"]
])
m.clear()
console.log(m);
</script>
forEach
javascript"><script>
const m=new Map([
["name","aa"],
["age",'18'],
["name:a","age:b"]
])
m.forEach(function(value,key,map){
console.log(value+'-----'+key+'-----'+map);
})
console.log(m);
</script>
for of
javascript"><script>
const m=new Map([
["name","aa"],
["age",'18'],
["name:a","age:b"]
])
for(key of m){
console.log(key);
}
console.log(m);
</script>
has
javascript"><script>
const m=new Map([
["name","aa"],
["age",'18'],
["name:a","age:b"]
])
console.log(m.has("age"));
console.log(m.has("a"));
console.log(m);
</script>
size
javascript"><script>
const m=new Map([
["name","aa"],
["age",'18'],
["name:a","age:b"]
])
console.log(m.size);
console.log(m.length);
</script>