注意点:
var、let、const区别:

  • var声明变量存在变量提升,let和const不存在变量提升
    在JavaScript中,在方法体外外用var定义的变量其它方法可以共享,在方法中用var定义的变量只有该方法内生效。
    let、const都是块级局部变量,const 的特性和 let 完全一样,不同的只是const声明时候必须赋值,只能进行一次赋值,即声明后不能再修改,如果声明的是复合类型数据,可以修改其属性
    同一作用域下let和const不能声明同名变量,而var可以
    法一:
    var p
      for(var i=0;i<arr.length;i++){
          if(arr[i]==item)
              {
                p=i
                  break
                  }    
      }
      if(i==arr.length) return -1
      else return p
    

}

法二:

return arr.indexOf(item) 存在返回索引,不存在返回-1
```