技术分享|js 判断变量为数组的方法

2 02 3 年,我那个朋友问我在JavaScript里怎么判断一个变量是不是数组。
我给他讲了三种方法:
1 . 上周我教他用instanceof,就是看变量是不是Array的实例。
变量是数组就返回true,不是就返回false。

2 . 然后我又说了constructor属性,它返回创建对象的构造函数。
如果变量是数组,constructor等于Array,就返回true。

3 . 最靠谱的是Object.prototype.toString.call方法。
不管数组引用地址怎么变,它都能准确判断。
变量是数组,它就返回"[object Array]"。

注意事项嘛,typeof只能返回"object",不能准确判断数组。
用instanceof和constructor时,要确保数组是在当前页面声明的,否则可能会出错。

最后,我推荐他使用Object.prototype.toString.call方法,因为它最可靠。
他听了之后好像挺满意的,说:“哦,明白了,谢谢你!” 我说:“不客气,你看着办吧。
” 算了。

js中将变量转换为数值的三种方法

Number()方法直接转数字,带字母就返回NaN。
上周刚处理一个需求,用这个踩坑了。

parseInt()只转整数,小数点后全扔。
我手上这个项目就用它处理表单数据。

parseFloat()转浮点数,保留小数点。
客户那边金额计算就用这个。

个人习惯Number()最保险,不确定就先用它试试。
怎么,你这边也用这些?

js如何看变量

console.log最常用,不会卡代码。
alert会卡,只适合看简单值。
debugger能停代码,还能改值。
浏览器直接看DOM能查变量。

你一般用哪个?