JS运算符:

运算符:加、减、乘、除、赋值、取余(也称求余)、自增、自减

例如:定义了变量,却没有赋值,输出就是undefined

        var a; 
        赋值:= 
        求余:%
        自增:++
        自减:--

        取余的意思是:一个数字除以另一个数字,除不尽的部分就是余数

        例如:5除以2 余数为1

        自增分为前置++和后置++,自减也同理
        关于自增和自减的一个练习:

        var a = 1;
        var b;
        var sum = (b = a+++--a) + a-- + b++;

        答案:5 拆分理解:sum = ( b = 1 + 1) + 1 + 2 

JavaScript的编译原理:

第一步是分词。把句式的代码分解为各式的有含义的代码块
第二部是解析。通过JS编译器,
第三步是代码生成

数组:

数组是一个容器,可以存放一个或多个对象。同时没有限制。
1.直接量定义,就是一对中括号声明一个数组对象——var a = ["a","b","c"];
2.采用构造函数Array,var a = new Arrey(8)或var b = new Array("a","b","c")

数组方法 | 增加:

1.使用a.push("a")的方法,元素会被添加到数组的尾部。
2.使用a[0]="a"的方法,设定对应的位置,可以给对应的内存空间塞入数据。

数组方法 | 减少:

1.使用splice的方法,作用是插入、删除或者替换数组元素 a splice(2,1,+)。

(前两个参数进行定位,余下的参数表示插入部分)

2.使用pop的方法,这个方法可以删除数组尾端的元素 a.pop( )。

数组方法 | 转化为字符串:

1.使用join的方法,在元素之间用指定的分隔符进行分隔。

        var fruits = ["Banana", "Orange", "Apple", "Mango"];
        var energy = fruits.join("and"); 

数组拓展:

数组是一个容器,可以存放一个或多个对象。同时没有限制。

函数 | 定义:

函数是一组可以被重复调用的代码语句。以下是格式:

 (1)  function myFunction( ) { 
                document.write("This is my first function!");
        } 
  or 
 (2)  var a = function( ) { 
                document.write("This is my second function!");
        } 

1.需用到function关键词,然后空一格,再加函数的名字。
2.(1)的定义会提前加载函数,(2)则不会。

函数 | 作用域:

分为全局作用域和函数作用域(即为局部变量)

没有出现函数时,所以的作用域都为全局作用域。

当发生作用域嵌套时,只能里面的访问外面的,反之不行。

如果当前函数作用域里找不到访问的变量,则会到父级作用域中查找。

函数 | 参数传递:

当var定义变量时,会先赋值undefined,即预备变量。再传递参数。

所有的参数都会装载到函数内部的arguments数组。

数据计算完了要用return a 才能在外部读取。

function add( ){
     var sum = 0;
    for(var i = 0; i < arguments.length;i++){
         sum = sum + arguments[i];
    }
    console.log(sum);
}
add(1,2,3,4); 

函数 | 闭包:

1.在函数作用域的嵌套。

2.内部的函数访问外边的作用域。

3.外部函数把内部函数作为返回指return出去了。

函数 | 自执行函数:

语法:(定义一个没有名字的函数)( );

自执行函数会立即执行,但它只会执行一次。

函数 | New函数:

this是JS中的一个关键字,意思是永远指向当前函数的调用者。

第一种写法:XXX.hellow();      (可以获取对象中的属性)

第二种写法:window['hello']();

第三种写法:var p ='hello';   window[p]();

如果需要输入大量属性,可以用构造函数构建一个对象模板。

如果是一个构造函数,那么首字母要大写

使用new关键字给对象附加属性。

给两个对象赋值时,若用等于号,指向的是同一个对象。

除了基本数字类型,其他都属于引用数据类型。

如果只是用等于号,那两个变量都属于变量区。

会调用同一块内存地址,也就是真实的对象地址。

函数 | 回调函数:

函数可以作为另一个函数的参数

当函数需要调用数据时,用callback(函数名)获取。

人生如逆旅,我亦是行人
最后更新于 2023-11-01