《js高程》 基本概念 上

基本概念 上

  • 语法
  • 数据类型
  • 流程控制
  • 函数

语法

  • 区分大小写
  • 标识符
    • 字母、下划线、美元开头
    • 其它字符可以是字母、下划线、美元或数字
    • 驼峰式
  • 注释
    • //单行注释
    • */多行
  • 严格模式 “use strict"; 区别后续指出

    • js文件 一开始声明
    • function 里声明,指定某个函数应用严格模式
  • 语句

    • 感觉没什么好说的需要注意自己写的代码规范。一般来说,代码规范和注释绝对是最重要的,虽然自己做的不太好,哈哈哈。
  • 关键字和保留字

  • 变量

    • var message; message undefined。
    • var message = "hi"; 之前字符串、字符都没有区别用单引号还是双引号。
    • 局部变量 和全局变量,注意变量的作用域。且变量提升问题,写代码过程中,感觉烦躁的地方 :一是很难去维护全局变量,二是变量命名。
  • 数据类型

    • Undefined 未定义

      • typeof undefined // "undefined"
      • undefined == undefined // true
    • Boolean 布尔值 不是等于0和1

      • true
      • false
      • Boolean(变量)

      | 数据类型 | true | false |
      | :-------: | :---: | :--------: |
      | Boolean | true | false |
      | String | 非空字符串 | “ ”空字符 |
      | Number | 非零 | 零 |
      | Object | 任何对象 | null |
      | Undefined | 不适用 | undefined` |

    • String

      • 字符串和字符,我以后字符串用“ ”,字符用 ‘ ’ 好区分
      • 转义字符 \n、\t、\b、\r、\ \、\'、\"等
      • 工作中常用的其实是对于字符串的分割
    • Number

      • var intNum = 55;

      • var octalNum = 070 ; // 八进制56 在严格模式下无法使用八进制,会导致js引擎出错。然而书上没说十六进制是否也是,经测试,十六进制是可以使用的。八进制和十六进制都是变成十进制进行数值计算的。

      • 浮点数 最高精度为17位小数

        • var floatNum = .1 ; 不推荐

        • var floatNum = 1.; 解析为1

        • var floatNum = 10.0 ; 解析为10

        • var floatNum = 3.125e7 ; 31250000

        • if( a + b == 0.3){//error,浮点数永远不要进行这样的操作
              alert("you got 0.3");
          }复制代码
        • 极大值Infinity或者极小值-Infinity, isFinite() 函数可以确定某个数字是否在最大和最小之间。

        • NaN(not a number)任何数除以0会返回NaN以及任何对NaN进行操作返回的值都会是NaN,实际上 0/0 是 NaN ,其它的是Infinity 或者 -Infinity。NaN 与任何值都不相等 alert( NaN == NaN ) //false

        • //isNaN() 函数   
          isNaN(NaN) //true
          isNaN(10) //false
          isNaN("10") //false 转换为10
          isNaN("blue") //true 
          isNaN(true) //false 转换为1复制代码
        • 数值转换 Number()、Number()、parseFloat()

          //Number()
          var num1 = Number("Hello world!");    //NaN
          var num2 = Number(""); //0
          var num3 = Number("000011"); //11
          var num4 = Number(true); //1
          
          //Number()
          var num1 = parseInt("1234blue"); //1234
          var num2 = parseInt(""); // NaN
          var num3 = parseInt("0xA"); // 10(十六进制数)
          var num4 = parseInt(22.5);  // 22
          var num5 = parseInt("070"); // 56(八进制)
          var num6 = parseInt("070"); // 70 (十进制)
          var num7 =  parseInt("0xf"); // 15 (十六进制)
          // 按进制
          var num1 = parseInt("10", 2);
          var num2 = parseInt("10", 8);
          var num3 = parseInt("10", 10);
          var num4 = parseInt("10", 16);
          
          //parseFloat()
          var num1 = parseFloat("1234blue");//1234 
          var num2 = parseFloat("0xA"); //0
          var num3 = parseFloat("22.5"); //22.5 
          var num4 = parseFloat("22.34.5"); //22.34
          var num5 = parseFloat("0908.5"); //908.5
          var num6 = parseFloat("3.125e7"); //31250000复制代码
复制代码

```

  • Object 对象或是null

    • var o = new object();//创建对象
      • 对象都有构造方法constructor
      • hasOwnProperty(propertyName) 对象是否有什么属性
      • isPrototypeof(object) 某个对象是否为对象的原型
      • propertyIsEnumerable(propertyName) 是否可枚举
      • toLocaleString();对象的字符串表示 与执行环境相对
      • toString() 对象的字符串表示
      • valueOf() 返回对象的字符串、数值或是布尔值表示
  • Null

    • 表示空对象指针 typeof null //object

    • 如果定义的变量准备用来存放对象的话,最好初始化为null。检查null的时候可以看到是否依旧存在了一个对象的引用

    • undefined 派生自 null ,null == undefined //true

    欢迎个位小伙伴 关注我的公众号 moomoocode 一起学习前端。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值