Appearance
Preface 
最近要年度总结,穿梭在各个 Confluence 文档之中,忽逢一《02_07 面试题》,阅读之,乃一“如何判断一个变量是数组”问题是也。
由于只知道其中部分方法,这意味着法强不够,特此记录。
- Array.isArray(foo) 
- toString.call(foo) === '[object Array]' 
- Object.prototype.toString.call(foo) === '[object Array]' 
- foo instanceof Array 
- foo.constructor === Array 
- foo.constructor.name === 'Array' 
What's More 
另外顺便贴一下昨晚偶然看到的八股文:
js
const foo = ["1", "2", "3"];
const bar = foo.map(parseInt);bar 的值是:
[1, NaN, NaN]这是因为,parseInt 的第二个参数是 radix,理论上取值 2-36,ES 5 规定传 0 或不传按 10 进制来转换。