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>";
html() 方法用于设置或返回所选元素的HTML内容。当你使用html()设置下拉框(<select>元素)的内容时,新内容会立即显示,因为HTML内容是直接替换原有内容的。
而innerHTML和innerText属性通常用于获取或设置元素的HTML或文本内容。对于下拉框(<select>元素),当你使用innerHTML或innerText设置内容时,由于这些属性不适用于设置<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;
如果需要同时给多个变量赋不同的值,解构赋值(数组解构或对象解构)是最灵活和强大的方式
如果同时给多个变量赋相同的值,链式赋值或逗号操作符是最直接和简洁的方式
浙公网安备 33010602011771号