请教各位大神一个问题这里的
!!$('<input type="file">').prop('files') 
!!window.URL && URL.createObjectURL
!!window.FormData
this.support.fileList && this.support.blobURLs
!this.support.formData这些都是判断什么的啊还有就是 !!和!有什么区别啊?

解决方案 »

  1.   

    !就是代表否,
    !!就是二次取反 ,这写代码的估计是c之类的写多了.上面是两个属性(应该是属于一个类的),一个support:里面有三个属性,取值都是为布尔值
    init 初始化的函数,具体取值,看实际获取到的值
      

  2.   

    !!$('<input type="file">').prop('files') 
    是判断当前浏览器中 <input type="file">元素是否有files属性!!window.URL && URL.createObjectURL
    写的不太正确。应该是
    !!(window.URL && URL.createObjectURL)
    判断当前浏览器window中有URL属性,并且URL中有createObjectURL属性其它类似。
    !是逻辑“非”运算符。!!就是两个逻辑“非”运算符。
    意思是对一个值逻辑取反之后再取反。将这个值转换成真正的布尔类型(true/false)
      

  3.   

    任何一个值取!的结果就是一个bool值,已经取反操作一次,再来一次就回到原来的真值(双重否定等于肯定),不过呢这里的!!操作后,表达式的值会是bool值,比如:(5+6)结果是11,!(5+6)结果是false,!!(5+6)结果是true;这样的双重操作无非就是将原来值从非bool转化为bool。这么耐心给你讲解,希望采纳