javascript第二课

一.引用方式

事件属性,和一个事件绑定,on+事件名称例如:onclick

1.行内脚本-在标签内使用
2.内部脚本-在/body前的script标签
3.外部脚本-用script src属性链接

二.常量与变量

直接使用的为字面量或直接量
变量:是需要声明和赋值的,可以实现数据共享
<script> let name = "lll" console.log(name) </script>
请添加图片描述

1.变量的第一次赋值为初始化
第二次为更新赋值
请添加图片描述

  let name = "lll"
        console.log(name)
        name = "kkk"
        console.log(name)
name = "null"
        console.log(name)

给变量赋值为null时name没有值

推荐声明时直接初始化

2.常量
常量通常全大写,多个单词之间使用下划线
通常用const来声明

 <SCript>
        const GENDER = "female"
        console.log(GENDER)
        gender = "male"
        console.log(GENDER)
    </SCript>

请添加图片描述
用小写去改变常量时GENDER值不变
3.标识符

1.字母。数字,下划线,$,并且禁止数字开头,严格要求大小写
2.不能使用保留字或者关键字

let let = "abc"

 console.log(let);;

请添加图片描述
4.命名方式
驼峰式:userName
/帕斯卡式:USerName
蛇形式:user_name
匈牙利式:将数据类型放到变量后 oname

  JS推荐使用驼峰式

三.数据类型

1.原始类型 :数值(1213),字符(‘1213’),布尔(true,false)
undefined,null 特殊值

2.将特殊值以某种规则进行组合,就构成了复合类型

   <script>
        let name = 123
        console.log(name, typeof name)
        name = "'abc'"
        console.log(name, typeof name)
        name = true
        console.log(name, typeof name)
        name = null
        console.log(name, typeof name)
        name = num
        console.log(name, typeof name)
    </script>

请添加图片描述

引用类型(对象):对象object,数组array,函数function

   let add = function (a, b) {
            return a + b;
        }
        console.log(add, typeof add)
        // 既然函数可以作为对象那我们也可以给对象属性
        add.id = "123"
        console.log(add.id)
        // 数据的加减需要相同类型
        console.log(100 + 100)
        console.log(100 + "100")
        console.log(100 + Number("100"))

请添加图片描述
""非严格判断,只检查值,不检查类型
"
"两边类型不同时,会自动触发类型的自动转换
console.log(100 == “100”);
“="要求值相等,且类型与相等才返回true
"
=”:不会触发类型的自动转化,一般被推荐使用

四.函数的提升和重写

声明,调用,

<script>

        // 函数的声明
        function getname(name) {
            return "欢迎:" + name
        }
        // 函数的调用
        console.log(getname("小杰不易"))
        // 函数是可以重写的
        function getname(name) {
            return "welcome:" + name
        }

    </script>

请添加图片描述

命名函数声明提升,如果不希望函数提升,必须先声明使用,用匿名函数

 console.log(sum(1, 5))
        function sum(a, b) {
            return a + b
        }
console.log(sum(1, 5))
        // function sum(a, b) {
        //     return a + b
        // }
        let sum = function (a, b) {
            return a + b
        }

请添加图片描述

函数都是单值返回
1.必选参数

 let sum = function (a, b) {
      return console.log(a, b);;
    };

2.默认参数

 sum = function (a, b = 20) {
      return a + b;
    };
    console.log(sum(1));

归并函数,reset语法,将所有参数压到一个数组来简化参数的获取过程

 let sum = function (...arr) {
            console.log(arr);

        } 

五.高阶函数

1.高阶函数:使用函数为参数或者将函数作为返回的函数

 <script>
        function demo(f) {
            console.log(f);
            return function () {
                return "abc";
            };
        }
        let f = demo();
        console.log(f());
    </script>

返回为函数
2.回调函数

document.addEventListener("click", function () {
      alert("大家晚上好");
    });

3.偏函数

 let sum = function (a, b) {
      return function (c, d) {
        return a + b + c + d;
      };
    };
    let res = sum(1)(2)(3)(4);
    console.log(res);

4.纯函数:在函数内部没有引用外部数据的函数

  let c = 100;
    function add(a, b) {
      return a + b;
      // c来自函数外部,不是我自己的
      // return a + b + c;
      // 去掉c就是纯函数,此时函数的所有参数都必须是通过调用者传入的
    }

六.箭头函数

匿名函数,可以使用箭头函数来简化它
如果箭头函数的代码体只有一行语句,可以删除大括号,自带return功能
如果函数中药使用到this,就不要使用箭头函数,不能当构造函数用

 <script>
        function sum(a, b) {
            return a + b
        }
          sum = (a, b) => {
        return a + b;
      };
        sum = (a, b) => a + b;
    </script>

七.立即执行函数

1.声明
2.调用

  // 声明
      function sum(a, b) {
        console.log(a + b);
      }
      //   调用
      sum(100, 200);

立即执行函数可以吧声明和调用合二为一,声明后立刻执行 格式:()()

 (function sum(a, b) {
            console.log(a + b);
        })(100, 600);
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值