• 前端之JavaScript


    一. JavaScript引入方式

      1. script标签内 : <script> JS代码 </script>

      2. 引入外部js文件 : <script src="js文件名或位置"></script>

    二. JavaScript语言规范

      1. 注释 : ①. //单行注释

             ②. /*多行注释*/

      2. 结束符 : JavaScript中的语句要以分号( ; )为结束符

      3. 变量命名 : JavaScript的变量名可以使用_,数字,字母,$组成,不能以数字开头.

        ※ : 变量名区分大小写, 推荐使用驼峰式规则, 保留字(关键字)不能作为变量名

      4. 声明变量 : 使用 var 变量名 方式

    三. JavaScript数据类型

      1. JavaScript拥有动态类型 :

        ①. var x ;  // typeof(x)为undefined

        ②. var x=1 ;  // typeof(x)为number

        ③. var x = "haha"  // typeof(x)为String

      2. JavaScript数字类型不区分整型和浮点型 :

        ①. var  a = 12.5;  //typeof(a)为number

        ②. var  b = 20;  // typeof(b)为number

        ※. NaN表示不是一个数值(Not a Number) , 但是NaN本身是一个数值类型

        ③. 常用方法 : 

          i : parseInt("123")  //返回123  含义 : 解析字符串返回一个整数数值

          ii : parseInt("125.78")  //返回125

          iii : parseInt("asd")  //返回NaN

          iiii : parseFloat("123.45")  //返回123.45

      3. 字符串(String)

        var a = "hello";

        var b = "world";

        var c = a + b;  //字符串拼接一般使用 " + "

        console.log(c);  //结果 : helloworld

    字符串方法 说明
    .length 返回字符串长度
    .trim() 移除字符串两端空格
    .trimLeft() 移除字符串左边的空格
    .trimRight() 移除字符串右侧的空格
    .charAt( n ) 返回索引为n的字符(空格算字符)
    .concat("字符串1","字符串2",.....) 将原字符串和concat的参数拼接在一起
    .indexOf("待查找序列",开始的索引位置) 查找字符串内子序列的位置
    .substring("开始索引位置","结束的索引位置") 根据索引获取字符串内的子序列
    .slice() 切片
    .toLowerCase() 将字母变为小写
    .toupperCase() 将字母变为大写
    .split() 切割(和python用法相同)

      4. 布尔值(Boolean)

        和python不同,true和false都是小写

        var a = true;

        var b = false;

        ""(空字符串), 0, null, undefined, NaN的布尔值均为false.

      5. null和undefined

        ①. null表示的是空,一般在需要制定或清空一个变量时才会使用.

        ②. undefined表示当声明一个变量但是未赋值时,该变量的默认值是undefined.函数没有明确的返回值时,返回的也是undefined.

      6. 数组

        数组的作用是 : 使用单独的变量名存储一系列的值.类似于python中的列表

        var a = [ 123,"abc" ];

        console.log(a[1]);  //返回abc

        常用方法 : 

    数组方法 说明
    .length 数组的大小(长度)
    .push("字符") 在数组的尾部追加元素,返回数组的大小(长度)
    .poo() 删除一个元素(默认在尾部删除),返回被删除的元素
    .unshift("字符") 在数组的开始位置插入一个元素,返回数组的大小(长度)
    .shift() 将头部的元素删除,返回被删除的元素
    .slice() 切片(和python用法相似)
    .reverse() 将数组反转,在原数组基础上操作
    .join("连接符号") 将数组元素通过连接符号连接成为字符串
    .concat("字符1/数组1","字符2/数组2",....) 将字符/数组添加到数组内(默认添加到末尾)
    .sort() 排序(根据元素的ASCII排序)
    .forEach() 将数组的每个元素传递给回调函数
    .splice(a,b,c) 将索引为a~b的元素全部删除,并将c字符添加到a~b的索引位置
    .map() 返回一个数组元素调用函数处理后的值得新数组

    四. 运算符

      1. 算数运算符

        +  -  *  /  %  ++(python中的+=)  --(python中的-=)

      2. 比较运算符

        >  >=  <  <=  !=  ==  ===  !==

        ※. ==只判断数值是否相等  1 == "1" //true

        ※. ===判断数值和数据类型  1 === "1" //false

      3. 逻辑运算符

        &&  ||  !

      4. 赋值运算符

        =  +=  -=  *=  /=

    五. 流程控制

      1. if-else

        var a = 10;

        if (a > 5) {

          console.log("yes");

        }else{

          console.log("no");

        }

      2. if-else if-else

        var a = 10;

        if(a>5){

          console.log("a>5");

        }else if(a<5){

          console.log("a<5")

        }else{

          console.log("a=5")

        }

      3. switch

        var a = 5;

        switch (a) {

          case 0;

          console.log("a = 0");    

          case 1;

          console.log("a = 1");

          break;

          case 2;

          console.log("a = 2");

          break;

          case 3;

          console.log("a = 3");

          break;

          case 4;

          console.log("a = 4");

          break;

          case 5;

          console.log("a = 5");  

          break;

          }

        ※. switch中的case子句通常都会加break语句,否则程序会执行后续的case的子语句.

      4. for

        for ( var i=0;i<10;i++ ) {

          console.log(i);

        }

        参数说明 : i=0 : i的初始值

             i<10 : 限制i的范围

             i++ : i=i+1

      5. while

        var i=0;

        while (i<10) {

        console.log(i);

        i++;

        }

      6. 三元运算

        var a = 1;

        var b = 2;

        var c = a > b ? a : b

        说明 : 判断a是否大于b, 如果a > b 成立, c = a .如果a > b 不成立,c = b

  • 相关阅读:
    完结篇《产品在路上》
    产品经理的七个层次
    互联网产品的交互设计
    互联网产品的用户体验
    用户体验设计 UED (下)
    用户体验设计 UED (上)
    【100Days of 100 line Code】1 day
    leetcode 392.判断子序列(Java 贪心)
    leetcode 605.种花问题(java 贪心)
    leetcode 122.买卖股票的最佳时机||(Java 贪心)
  • 原文地址:https://www.cnblogs.com/dong-/p/9586122.html
Copyright © 2020-2023  润新知