学习JS第一天的每日重点难点总结

1、js最好使用script标签引入

<script src="js/index.js"></script>

2、引入script的位置最好是在body标签结束之前

3、输入与输出

      alert():弹窗

      prompt(): 输入弹窗

      document.write():将内容写入网页进行展示

      console.log(); 在控制要输出,一般用于调试

4、创建变量(变量声明)

      >> 通过 var 关键字声明变量
        var 变量名;
        var 变量名=变量值;

        注意:变量没有类型限制,可以随时赋予任意的一个值。
          var a = 'abc';
          a = 123;

5、变量命名规则


      * 变量由 字母、数字和符号(只能是下划线或者美元符号)组成;
      * 首字符不能是数字,一般建议字母开头;
      * 区分大小写;
      * 小驼峰式写法(第二个单词开始首字母大写);
      * 不能使用关键字和保留字;

6、基本数据类型


      >> 字符串类型(String):
        var str = 'abc'; // 单双引号都可以
        var strNum = '123';

      >> 数值类型(Number):
        var num = 123; // 由阿拉伯数字组成,不需要加引号

        * 十进制:常用
        * 八进制:以 0 开头的数字 017
        * 十六进制:以 0x 开头的数字,如:0xF
        * 二进制:由 0 与 1 组成的数字
        
        浮点数精度问题(浮点数就是小数):
          二进制浮点数不能精确的表示类似 0.1 这样的数字的。

      >> 布尔值类型(Boolean):
        只有两个值 true 和 false

        var bool = true;

      >> 未定义(Undefined):
        表示缺少值。

      >> 空(Null):
        代表没有对象。可以用于销毁变量。

7、引用数据类型 -- 对象(Object)

        var student1 = {
          name: 'jack',
          age: 18,
          grade: '大一',
          sex: '男',
          child: {}
        }

      >> 对象结构:
        var 变量名 = {
          属性名: 属性值, // 属性值可以是任意数据类型(undefined 和 null 没有意义)
          属性名: 属性值
          ...
        }


8、数据类型检测


      typeof 变量;

      var str = 'hello';
      var num = 0;
      var bool = true;
      var u;
      var n = null;
      var obj = {
        name: 'jack'
      }

      console.log('typeof str:', typeof str); // string
      console.log('typeof num: ', typeof num); // number
      console.log('typeof bool: ', typeof bool); // boolean
      console.log('typeof u: ', typeof u); // undefined
      console.log('typeof n: ', typeof n); // object
      console.log('typeof obj: ', typeof obj); // object

      说明:Null 和 Object 都会返回 object,底层都是用 二进制 表示,
      在 JS 中二进制前三位都为 0 的话就会判断为 object 类型,Null 的二进制表示全都是 0。
 

9、隐式转换


      var n1 = true;
      var n2 = 'true';
      console.log(n1 == n2); // 两个 = 代表相等

      var s1 = '123';
      var s2 = 123;
      console.log(s1 == s2);

      var s3 = '123';
      var n3 = 123;
      var z = s3 + n3;
      console.log(z, typeof z);

10、强制转换


      主要是 Number() 、String()、Boolean() 三个函数的使用。

      >> 布尔值的转换:
        Boolean(变量);

      >> 字符串转化:
        String(变量)
          console.log(String(str));
          console.log(String(num)); // '123'
          console.log(String(bool)); // 'true'
          console.log(String(obj)); // '[object Object]'

        变量.toString():不可以转 Null 和 Undefined
          console.log(typeof num.toString());

      >> 转数值:
        Number(变量)
          * 如果是数值类型,会保留小数点;
          * 如果是字符串则转为 NaN;
          * 布尔值 true 转为1,布尔值 false 转为0
          * 对象是 NaN;
          * NaN(not a number)不是数值,NaN 与 NaN 不相等
          
        parseInt()
          * 如果是数值,直接截取小数点前的整数;
          * 如果是字符串,则从左往右一个一个解析,遇到非数字则停止解析。

        parseFloat()
          * 如果是数值,会保留小数点;
          * 如果是字符串,则从左往右一个一个解析,遇到非数字则停止解析。

11、算术运算符


      >> ++ 的理解:
        * 在没有赋值操作的时候,++ 放在变量前面和放在变量后面是一样的;
        * 如果++放在了变量的前面,先对变量+1,然后再执行当前这行代码;
        * 如果++放在了变量的后面,则是先执行当前行代码,完成后对变量进行+1;
    
     拼接符
      加号 不同于其他的几个符号:
        * 运算中只要有一方是字符串,就会把另外一方也转为字符串,然后连接在一起;
        * 但是 -、*、/ 运算中,只要一方是数字,另一方就会转为数字;

     赋值运算符:=、+=、-=、*=、/=。+-*/的简写。

    关系运算符
      == // 判断前后两个数据是否相等
      === // 判断前后两个数据是否全相等,值与数据类型都是一样的
      != // 不相等
      !== // 完全不相等
      >
      <
      >=
      <=

    逻辑运算符
     && // 与,同时
     || // 或,二选一
     ! // 非,即相反

     优先级
      * 逻辑非 优先级最高;
      * 其次是算术运算符;
      * 然后是关系运算符;
      * 然后是 逻辑与 、逻辑或;
      * 最低是赋值运算符;
      
      通过加 () 可以调整优先级。

     三元运算符
      >> 语法:
        条件 ? 条件 true 执行的表达式 : 条件 false 执行的表达式;

        简单讲就是 2 选 1;

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值