核心提示:html开发中indexOf和includes的区别。var ary = [undefined];console.log(ary.indexOf())//0console.log(ary.includ...
html开发中indexOf和includes的区别。
var ary = [undefined]; console.log(ary.indexOf())//0 console.log(ary.includes())//true
这两个方法在不传入参数时,参数就认为是undefined
var ary = [NaN]; console.log(ary.indexOf(NaN))//-1 console.log(ary.includes(NaN))//true
方法 indexOf 不能判断数组中是否存在NaN,但includes可以的
var ary = [,,]; console.log(ary.indexOf(undefined))//-1 console.log(ary.includes(undefined))//true
这是 indexOf 认为稀疏数组,省略掉的值是不存在的,但 includes 认为是undefined