数组,对象,类型转换和严格模式

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
<script>
    var arr = [1,2,3,45,5,7,"x",null,undefined];
    console.log(arr.length);

    var person = {
        name:"",
        age:0,
    }

    //二进制转十进制
    var num = 101010110101;
    //二进制转十进制
    var test = parseInt(num,2);
    // 十进制转八进制
    var num1 = test.toString(8);

    // false: undefined是NaN
    console.log(isNaN(null));
    console.log(Nan==NaN); //必定是false,因为NaN不等于任何值
    console.log(3.1415926.toFixed(3)); //保留三位小数

    //代表空,否定的值都会被转换为false,例如"",0,NaN,null,undefined
</script>
</html>

 

严格模式

 "use strict";

严格模式是否声明均可

但是严格模式下,JS会强制代码严谨。

  • 作用范围:当前作用域以及其下作用域
  • 约束变量声明:变量必须声明,约束变量的重复声明以及变量污染
  • 约束变量名称:比如变量名不能叫public或者private等关键字
  • 严格模式会使引起静默失败(silently fail,注:不报错也没有任何效果)的赋值操作抛出异常.
  • 在严格模式下, 试图删除不可删除的属性时会抛出异常
posted @ 2020-11-25 23:48  SvenWayne  阅读(78)  评论(0)    收藏  举报