-
Map和Set区别 常见用法
-
Map区别
-
所有元素都是键+值存在
-
不允许键重复
-
所有元素是通过键进行自动排序的
-
map的键是不能修改的,但是其键对应的值是可以修改的
-
Set区别
-
元素只有key没有value,value就是key
-
不允许出现键值重复
-
所有的元素都会被自动排序
-
能通过迭代器来改变set的值,因为set的值就是键
-
Map用法
-
set、get、has、delete、size、clear
-
set() 方法为Map对象添加一个指定键(key)和值(value)的新元素。返回Map对象. map.set(arr)
-
get() 方法用来获取一个 Map 对象中指定的元素. 例子 map.get(arr)
-
has()方法返回一个bool值,用来表明map 中是否存在指定元素. 例子object.has(key);
-
delete()方法 移除 Map 对象中指定的元素。例子 object.delete(key);
-
clear() 方法 清除所有成员,没有返回值 例子 object.clear();
-
Set用法
-
add、delete、size、has、clear
-
add()方法 例子 arr.add(1);
-
delete方法 例子 arr.delete(1);
-
has 方法 例子 arr.has(1);
-
clear方法 例子 arr.clear()
-
TS中type和interface的区别
-
type
-
支持描述一个对象或者函数
-
不能使用extends进行扩展,需要扩展的话可以使用交叉类型&的方式
-
不可以继承
-
type 语句中可以使用 typeof 获取实例的类型进行赋值:type T = typeof 变量
-
可以声明基本类型别名,联合类型,元组等类型
-
interface
-
支持描述一个对象或者函数
-
可以使用extends直接进行扩展
-
可以继承
-
只能声明对象的形状,不能重命名原始的类型(string、number等)
-
什么时候用type什么时候用interface?
-
推荐任何时候都用type,type使用起来更像是定义一个变量,type的特点如下
-
表达功能强大,不局限于Object/class/functiion
-
要扩展已有的type,需要重新创建type,type不可以重名
-
支持更复杂的类型操作
-
只有一种类型只能使用interface来表达,那就是往函数上面挂载属性
-
cdn如何实现加速?
-
cdn全名就是内容分发网络,当用户发送请求到服务器后,服务器会根据用户的所在区域,给用户分发最近的cdn服务器,这样既可以提升用户的访问速度,又可以减少带宽消耗,降低负载。
- 33.7w
- 7800
- 395