zoukankan      html  css  js  c++  java
  • Javascript学习中比较核心的知识(持续更新)

    工欲善其事必先利其器,先介绍一个非常好用的Javascript IDE: WebStorm; 非常不错。

    1. 对象直接量 即使用{}定义的对象,如 {name:"kid", age: 18, school:"Harvard"}; 内部是 属性:值 对。
    2. 变量的作用域 Javascript的作用域分两种,global和local; 在函数内部任何位置通过var声明的变量,它的作用域都是整个函数。这就有个有趣的现象:
      var myInterest = "basketball";
      function jarek() {
          printInterest(myInterest);
          var myInterest="football";
          printInterest(myInterest);
      }
      jarek();
      第一个printInterst显示的是什么呢? 答案是undefined。为什么不是basketball呢?因为在函数内部声明了一个同名的变量,整个变量的作用域是整个函数,但是在第一次调用打印的时候,它还没有定义,所以得到的就是undefined。
    3. Javascript中的变量分为两类: 基本类型引用类型。数值、布尔值、null和undefined都属于基本类型;对象、数组和函数属于引用类型。
      基本类型在内存中具有固定的大小;而引用类型在内存中的大小都是不确定的。二者的变量的使用有很大的区别:
      var a = 10;
      var b = a;
      a = 15;
      print(b); //打印10,因为a的值是复制给b的,修改a并不会改变b的值。
      var c = [1, 2, 3];
      var b = c;
      c[0] = 99;
      print(b[0]); //打印99! 因为在执行b=c的时候,使b也引用了c引用的对象;所以使用b,c进行对象修改时,修改的是同一个对象。
    4. Function arguments; javascript中,每一个函数都有一个arguments属性,通过这个属性,可以得到函数的实际参数。arguments[0]得到第一个参数,依次类推;arguments.length得到实际参数的个数;
      Function本身也有length属性,这个属性表示的是函数声明时的参数个数,通过这两个length,可以进行一些判断性操作,根据实际参数与期望个数是否相同,采取不同的动作。
      arguments另一个重要的属性是callee, 即它所属的函数本身。对于匿名函数,这个特性尤其重要。
      function(x) { if(x== 0) return 1; else return x*arguments.callee(x-1);}
    5. 定义你自己的函数属性; 类似于c++中类的静态变量,可以为javascript函数,自定义一个属性。
      uniqueInteger.counter = 0;
      function uniqueInteger() {
        return uniqueInter.counter++;
      }
    Keep Practising as Kobe does!
  • 相关阅读:
    【idea】批量修改文件的换行类型
    【shell】for循环执行sql语句
    【gitlab】创建token供外部git clone
    【idea】修改git源
    【浏览器】 NET::ERR_CERT_INVALID
    mac os 11 Big Sur 根目录无法写入解决办法
    dbeaver把表数据导出csv时字符串自动加双引号问题解决
    spring boot2 jpa分页查询百万级数据内存泄漏
    win10安装MAT并单独配置jdk11
    Transaction silently rolled back because it has been marked as rollback-only
  • 原文地址:https://www.cnblogs.com/lstj/p/3368712.html
Copyright © 2011-2022 走看看