Javascript问题集锦

1.Date.parse()函数兼容性问题:

  IE   Chrome Firefox
Date.parse("07-17-2019") 1563292800000 1563292800000 NaN
Date.parse("17-07-2019") 1588780800000 NaN   NaN
Date.parse("07/17/2019") 1563292800000 1563292800000 1563292800000
Date.parse("17/07/2019") 1588780800000 NaN NaN

   参考上图: Date.parse()函数参数格式必须是   月/日/年 以“/”分隔开

2.下拉框Select设置默认值

     $("#元素ID").innerHTML="<option option:selected>/</option>";

    $("#元素ID").innerHTML="<option option:selected>/</option>";
    $("#元素ID").text("/");
    $("#元素ID").text("/");
      在jQuery中,html() 方法用于设置或返回所选元素的HTML内容。当你使用html()设置下拉框(<select>元素)的内容时,新内容会立即显示,因为HTML内容是直接替换原有内容的。

   而innerHTMLinnerText属性通常用于获取或设置元素的HTML或文本内容。对于下拉框(<select>元素),当你使用innerHTMLinnerText设置内容时,由于这些属性不适用于设置<select>元素                     的选项,因此不会有任何效果,也不会抛出错误。

    innerHTML是Javascript原生的一种写法,给指定标签赋内容;jQuery标签提供了3种方法实现指定标签赋内容 .html() .val()  .text()

    .html() 用来读取或修改元素的HTML标签,对应 js中的innerHTML

   .text()用来读取或修改元素的纯文本内容,对应js的innerText,不能使用在表单元素上

    .val()用来读取或修改元素的value值

3. 在 JavaScript 中,两个感叹号 !! 是一种常见的语法用法,它通常用于将一个值转换为布尔值

     3.1 在 JavaScript 中,! 是逻辑非运算符,它会将一个值转换为布尔值。如果值是“假值”(falsy value),结果为 true;如果值是“真值”(truthy value),结果为 false

     3.2 使用两个 !,可以对一个值进行两次逻辑非运算,从而实现将任何值转换为布尔值的目的。

 用途:1)确保变量是布尔值:当你需要确保一个变量是布尔值时,可以使用 !!

              2)转换为布尔值:在某些情况下,你可能需要将一个值转换为布尔值,以便进行逻辑判断。

     3)处理不确定的值:当你不确定一个变量的值是否为布尔值时,使用 !! 可以确保它是一个布尔值。

4. 在 JavaScript 中,可以通过多种方式同时给多个变量赋值。以下是一些常见的方法:

     1) 使用逗号分隔赋值, var a=1,b=2;

     2) 使用解构赋值,支持数组解构和对象解构   ES6引入的一种强大的语法

           数组解构: var [x, y] = [10, 20];    

           对象解构:var { a, b } = { a: 100, b: 200 }

     3) 使用表达式赋值   var a=1,b=2;  var c,d;  c=d=a+b

     4) 使用函数返回多个值(解构赋值)

          function getValues() {return [100, 200];}   let [x, y] = getValues();

  5) 使用链式赋值     var a=b=c=666;

     如果需要同时给多个变量赋不同的值,解构赋值(数组解构或对象解构)是最灵活和强大的方式

     如果同时给多个变量赋相同的值,链式赋值或逗号操作符是最直接和简洁的方式

posted on 2019-07-17 11:34  追求高级技术  阅读(194)  评论(0)    收藏  举报