2020-08-24
描述
获取一个数组、对象或字符串的长度。
提示
- 获取
val
的类型(array
,object
或者string
) - 数组使用
length
属性 - 如果
length
或者size
可用的话就使用他们,否则的话使用对象拥有键的数量 - 如果
val
为字符串的话就使用其创建一个Blob
对象,然后返回该对象的size
- 使用
split('')
将字符串的每一个字符都分别分割到数组中,然后返回该数组的长度
代码
const size = val =>
Array.isArray(val)
? val.length
: val && typeof val === 'object'
? val.size || val.length || Object.keys(val).length
: typeof val === 'string'
? new Blob([val]).size
: 0;
示例
获取长度:
size([1, 2, 3, 4, 5]); // 5
size('size'); // 4
size({ one: 1, two: 2, three: 3 }); // 3