javascript 函数

本文介绍了JavaScript的基础知识,包括函数的定义、调用、返回值,数组的使用,事件回调函数,以及函数在实际场景中的应用,如按钮点击事件、页面元素操作等。通过示例代码展示了如何创建和使用函数,以及如何处理数组数据和响应用户操作。
摘要由CSDN通过智能技术生成

1.函数的概念

1、函数

使用function修饰的独立功能代码块,称函数

2、函数的语法

function add(a, b){
        let res = a + b
        return res
      }

3、function 是函数的修饰符

4、add 是函数的名称

5、(a,b) 是函数的形式参数列表

6、{let res = a+b; return res;} 是函数体

7、函数的使用或调用

let rt = add(1,2)

8、函数的分类

8-1 是否有名称

-- 具名函数 、匿名函数

8-2 构造函数

8-3 ES6箭头函数

8-4 回调函数,函数作为参数使用

9、元素的事件属性:在开始标签中定义的onclick onmouseover... on+*属性,表示对某种事件的监听

10、元素:开始标签开始,到结束标签结束包含的所有内容

11、元素的属性:在开始标签中定义的key=vlaue键值对

12、函数的内部是局部作用域,内部定义的变量,不可在函数外部使用

13、函数可以被重复使用

演示:

<button onclick="myFunction()">点击我执行一个函数</button>
  <script>
    // 1 点击button时触发的函数
    function myFunction() {
      alert('您点击了button按钮')
    }

    // 2 自定义一个函数执行数值的相加
    function add(a, b) {
      return a + b
    }
    // 函数的调用
    let rt = add(1, 2)
    console.log(rt); // 3
    rt = add(10, -30)
    console.log(rt); // -20

    // 3 函数fn1
    function fn1() {
      let num = 10
      console.log('fn1函数被调用了');
      console.log('num=', num);
    }
    // 函数的调用
    fn1()
    // console.log(num); // num is not defined num没有定义
  </script>

2.函数的返回值

1、函数体中定义return 表示终止函数,如果return 后面有值,就会把值返回给调用者

<script>
    function addition(a, b) {
      return a + b
    }
    function subtraction(a, b) {
      return a - b
    }
    function multiplication(a, b) {
      return a * b
    }
    function division(a, b) {
      return a / b
    }
    let rt = addition(1, 2)
    console.log(rt);
    rt = division(1, 2)
    console.log(rt);

    const log = console.log

    // 递归函数
    function fn() {
      let answer = prompt('今天天气如何?')
      if (answer === '晴天') {
        // 自己调用自己
        return log('出去玩')
      }
      fn()
    }
    fn()
  </script>

3.数组

    1、使用变量保存我们班所有成员名称,要声明很多变量,程序可读性差

    2、可以使用数组保存很多数据

    3、数组是一组具有相同数据类型的组合,可以使用一个变量名+下标存储很多数据

    4、声明数组

      let arr = []

      let arr1 = new Array()

      let arr2 = Array.of(1,2,3)

      let arr3 = Array.from([1, 2, 3])

    5、数组的四要素

      5-1 数组的名称 arr

      5-2 数组的长度 arr.length 元素的个数

      5-3 数组的下标 arr[0] 数组的下标[0,arr.length-1]

      5-4 数组的元素 数组真正保存数据的地方 arr[3] = 10

    6、使用数组

      let arr = [1,2,3]

      arr[1] = 20

      let num  =  arr[2] * 100

    7、数组添加元素

      arr.push(200)

    8、遍历数组

      for(let i = 0;i<arr.length;i++){

        console.log(arr[i])

演示:

<script>
    let arr = [1, 2, 3]
    let num = arr[2] * 100
    console.log('num=' + num); // 300
    arr[1] = 20
    console.log('arr=', arr);
    // 输出数组的长度
    let len = arr.length
    console.log('len=' + len);
    // 数组添加一个元素
    arr.push(200)
    console.log('arr=', arr);
    // 遍历数组
    for (let i = 0; i < arr.length; i++) {
      console.log('key=', i, ',value=', arr[i])
    }
  </script>

4.事件回调函数

 <button onclick="fn1()">点击执行fn1</button>
  <!-- 定义自定义函数,输入2个数,计算2个数的差值 -->
  <script>
    // button点击时触发的事件回调函数
    function fn1() {
      console.log('button点击时触发的事件回调函数');
    }
  </script>

5.函数的使用1

<div class="box">
    <h3 onclick="showCourse()">前端课程</h3>
    <ul class="course">
      <li>HTML5</li>
      <li>CSS3</li>
      <li>JavaScript</li>
      <li>jQuery</li>
      <li>Canvas</li>
    </ul>
  </div>
  <script>
    function showCourse() {
      console.log('showCourse被调用');
      let course = document.getElementsByClassName('course')[0]
      // console.log(course);
      // 给ul设置行内样式
      course.style.display = 'block'
    }
  </script>

6.函数的使用2(时间函数的调用)

<div class="box">
    <div class="txt"></div>
    <button onclick="showDialog()">点击添加祝福</button>
    <script>
      function showDialog() {
        let username = prompt('输入用户名')
        // 如果username没有值,不作拼接和输出
        if (!username) {
          return
        }
        let txt = document.getElementsByClassName('txt')[0]
        txt.innerHTML = username + ",新年好!"
      }
    </script>
  </div>

7.函数的使用3(函数和数组的使用)

<div class="box">
    <div class="student-list"></div>
    <button onclick="addStudent()">点击添加</button>
    <button onclick="showStudents()">点击显示</button>
  </div>
  <script>
    // 1、声明一个空数组,用于保存学生的姓名
    let arr = []

    // 2、定义添加学生的方法
    function addStudent() {
      console.log('addStudent函数被调用');
      let username = prompt('输入学生的名称:')
      if (!username) {
        alert('用户名不能空')
        return
      }
      // 向数组中添加元素
      arr.push(username)
    }

    // 3、定义显示学生的方法
    function showStudents() {
      let str = '现有学生:'
      for (let i = 0; i < arr.length; i++) {
        if (i === arr.length - 1) {
          str += arr[i]
        } else {
          str += arr[i] + ","
        }
      }
      console.log(str);
      let studentList = document.getElementsByClassName('student-list')[0]
      studentList.innerHTML = str
    }
  </script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值