• 44 JavaScript


     主要内容:

    1 . html 及 css 和jss的区别

      html :文档的结构

      css : 修改文档的外观结构

      javascrip: 实现页面上的动态效果

    2 . JS的历史及ECMAScript

      1 )  javascript的概述 :

        javascript是脚本语言, 是一种较轻量级的编程语言; 是可插入HTML页面的编程代码;JavaScript插入HTML页面的编程代码.

      2 )  JAVAScript(雷峰塔)   Java(雷锋)没有实质性的关系

      3 ) ECMAScript  一个标准 ES5/ES6

      4 ) node.js         跑在服务端的js

    3 . javascript的引入方式

        <script>console.log(123);</script>   # script标签内写代码
        <script src="script.js"></script>    # 引入额外的js文件

      注释方式:
      \ 单行注释 /*多行注释*/
      结束符:
      JavaScript中的语句要以分号(;)为结束符.

    4 . 变量的命名规范:

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

      2 ) 声明变量使用var变量名的格式进行声明.(变量名区分大小写, 建议使用驼峰式命名规则)

    5. JavaScript的数据类型

      1 ) 数值类型 (Number) : javascript 不区分整型和浮点型, 就只有一种数据类型.

    var num = 1
    undefined
    var b = 13.5
    undefined
    typeof num
    "number"
    typeof b
    "number"
    

            a : NaN : 是number类型, 表示不是一个数字

    parseInt('123')       //返回123
    parseInt('abc')       //返回nan 
    typeof NaN
    "number"
    parseFloat('123.456') //返回123.456

      2 ) 字符串( string )

        a : .length            返回长度

    var s = 'lililii'
    undefined
    s.length
    7
    

         b : .trim()              移除空白  

         .trimLeft(), .trimRight() 移除左边的空白和右边的空白

    var s = 'libai   '
    undefined
    s.trim()
    "libai"
    

       c :  .charAt(n)         返回第n个字符

    var s = 'dufu '
    undefined
    var t = s.charAt(3)
    console.log(t)               // u
    

         d : .concat(n1,  )         拼接

        +                            使用+号也可以实现拼接,较为常用

    var s = 'tian'
    s.concat('tt')
    "tiantt"
    

                                         利用+实现的拼接

    s = 'lili'
    v = 'uuuu'
    console.log(s+v)        // liliuuuu
    

          e :. indexof                 子序列的位置 

    s = 'qwert yuiop'
    s.indexOf('q')           // 0
    s.indexOf('q', 2)        //-1            如果找不到返回-1
    

           f : .substring               根据索引获取子序列

    s = 'li si ai bi'
    s.substring(1, 4)           //"i s"
    s.substring(1, -1)          //"l"  如果后面负数的比前面的小, 把后面的变成0, 然后换位置
    s.substring(4, 1) //"i s"把后面的数字和前面的数字换位置  h  

                h : .slice()                        切片

    s = 'li uu tt uu'
    s.slice(1, -1)             //"i uu tt u"   按正常切
    s.slice(1, 4)              //"i u"
    s.slice(4, 1)              //""            取到空字符          
    

     substring和slice的区别

        substirng()的特点:

                如果 start > stop ,start和stop将被交换

                如果参数是负数或者不是数字,将会被0替换

        silce()的特点:

                如果 start > stop 不会交换两者

                如果start小于0,则切割从字符串末尾往前数的第abs(start)个的字符开始(包括该位置的字符)

                如果stop小于0,则切割在从字符串末尾往前数的第abs(stop)个字符结束(不包含该位置字符)

              i : .toLowerCase(), .toUpperCase()       大小写

              j : .split ()                                                切割

    s = 'li uu tt uu'
    s.split(' ')                    // ["li", "uu", "tt", "u  u"]
    

                   k : $ 符格式化

    var name = 'lili'
    var hobby = 'read book'
    var s = `我叫${name}`
    console.log(s)        // 我叫lili
    

        3 ) 布尔值(Boolean)区别于python,ture或false都是小写

    var a = true
    var b = false
    undefined
    typeof a             // "boolean"
    

      ''(空字符串)  0 null  undefined  NaN 都是false

       4 ) null和undefined

        null表示值是真空, 一般是在需要指定或清空一个变量时才会使用,如name=null

        undefined表当声明一个变量但未初始化时, 该变量的默认值是undefined.还有就是当函数没有明确的返回值时,返回的也是undefined 

    name = 'alex'
    "alex"
    name = null
    null
    name
    "null"
    

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

        a: .length     获取数组的长度

    var li = [11, 22, 33, 44]
    undefined
    console.log(li.length)         //4
    

              b : .push()   尾部追加元素         .pop()  获取尾部的元素

         c:   unshift()  头部插入元素         .shift() 头部移除元素

    var li = [11, 22, 33, 44]
    li.push(55)
    5
    li
    (5) [11, 22, 33, 44, 55]
    li.pop()
    55
    li.unshift(9)
    5
    li
    (5) [9, 11, 22, 33, 44]
    li.shift()
    9
    li
    (4) [11, 22, 33, 44]
    

            d : slice()     切片;            .reverse()  翻转             . join()   将数组元素连接成字符串

    li = ['a', 'b', 'n']
    li.slice(1, 4)          //["b", "n"]
    li.reverse()           // ["n", "b", "a"]
    li.join('+')            //"n+b+a"
    

         e : sort排序

    var li = [2 , 11, 33, 14]
    li.sort()                  //[11, 14, 2, 33]  按照ascii值进行排序
    function sortNumber(a, b){
    	return a - b}
    li.sort(sortNumber)        //[2, 11, 14, 33]  按照数字大小进行排序
    

        f : splice          删除元素, 并向数组添加新的元素

    var li = [11, 22, 33, 44]
    li.splice(1, 1)                   //[22]    从第一个位置开始删除一个元素
    li.splice(1, 2)                   // [33, 44]从第一个位置开始删除两个元素
    li.splice(1)                      //[]       不写第二个参数默认删除一个
    
    li.splice(1, 1, 'aaa')            // [11, "aaa"] 在第一个位置删除一个元素, 并把aaa加到元祖删除的位置中.
    li.splice(1, 1, 'aaa', 'bbb')     // [11, "aaa", "bbb"]
    

      

    6 ) 类型查询typeof: 它是一个一元运算符,不是一个函数,也不是一个语句

    var li = [1, 2, 3]
    s = 'juishi'
    typeof li              //"object"
    typeof s               //"string"
    typeof null            //"object"
    typeof NaN             //"number"
    

    6 . 运算符 

      1 )  算术运算符     + - * / % ++ --

      2 )  比较运算符      >  >=  <  <=  !=  ==  ===  !==

    2 == '2'
    true               #  弱等于 , 判断值是否相等
    2 === '2'
    false              #  强等于 , 既要判断值相等不相等, 还判断类型是否相等
    

      3 )  逻辑运算符      && || !

    true || false
    true
    !1            //false
    !99           //false
    !!1           //true        快速的把一个变量转换成布尔值.

     4 )  赋值运算符    = += -= *= /=

    7 . 流程控制

      1 ) if- else

    var age = 19;
    if (age>18){
    	console.log('耶, 成年了');
    }else{
    	console.log("啦啦啦啦");
    }
    

      2 ) if - else if - else

    vara = 10;
    if (a > 5){
    	console.log('a>5');
    }else if (a<5){
    	console.log('a<5');
    }else {
    	console.log('a=5')}

      3 ) switch

    var today = 2;
    switch (today) {
        case 1 :
    	console.log('今天吃红烧肉');
    	break;
        case 2 :
    	console.log ('宫保鸡丁');
    	break;
        case 3 :
    	console.log ('清蒸鲈鱼');
    	break;
    	default :
    	console.log('吃泡面!')
    }

      4 ) for

    for(var i = 0;i < 10; i ++ ){
    	console.log(i);
    }

      for循环操作列表

    var li = [11, 22, 33, 44]
    for (var i = 0 ; i < li.length; i++){
    	console.log(li[i])
    }

      5 ) while

    var n = 0;
    while (n < 10){
    	console.log(n);
    	n ++
    }

      6 ) 三元运算

    var a = 100;
    var b = 130;
    var c = a > b ? a : b
    

        Python中的三元运算

    a = 12
    b = 13
    c = a if a > b else b
    print(c)
    

      








             

      

      

  • 相关阅读:
    设计模式之观察者模式
    设计模式之备忘录模式
    设计模式之中介者模式
    设计模式之迭代器模式
    设计模式之解释器模式
    设计模式之命令模式
    设计模式之职责链模式
    设计模式之代理模式
    设计模式之享元模式
    设计模式之外观模式
  • 原文地址:https://www.cnblogs.com/gyh412724/p/9585934.html
Copyright © 2020-2023  润新知