博客列表 >JS函数类型与数据类型学习

JS函数类型与数据类型学习

#三生
#三生原创
2022年01月04日 15:47:06451浏览

一. 函数类型, 匿名函数

1.命名函数
  1. // 有名字的函数
  2. // 命名: 动 + 名
  3. // 声明
  4. function getName(username) {
  5. let a = "猪";
  6. return "Hello " + a + username;
  7. }
  8. // 调用
  9. console.log(getName("老师")); // Hello 猪老师
2.匿名函数
  1. //执行方式1: 立即执行
  2. //IIFE
  3. (function(username) {
  4. console.log("Hello " + username);
  5. })("灭绝老师");
  6. console.log(
  7. (function(username) {
  8. return "Hello " + username;
  9. })("灭绝老师")
  10. );
  1. // 执行方式2: 保存到一个变量中
  2. // 函数表达式
  3. const getUserName = function(username) {
  4. return "Hello " + username;
  5. };
  6. console.log(getUserName("马老师")); //Hello 马老师
3.箭头函数

使用 箭头函数 来简化匿名函数的声明

  1. let f1 = function(a, b) {
  2. return a + b;
  3. };
  4. // 1. 去掉 function
  5. // 2. 在参数括号(...) 与 大括号{...} 之间使用 胖箭头 => 连接
  6. f1 = (a, b) => {
  7. return a + b;
  8. };
  9. // 如果只有一条语句,return ,可以不写大括号
  10. f1 = x => x * 2;
  11. console.log(f1(40));

二. 数据类型

1.原始类型(简单类型、基本类型、单值类型)
  • 不可再分, 是构成其它复合类型的基本单元
  • 原始类型也叫简单类型, 基本类型: 一个变量,存一个值
类型 举例
数值 number 123
字符串值 string php
布尔值 boolean true
undefined值 undefined undefined
object值 null null
示例:
  1. //数值number
  2. console.log(123, typeof 123);
  3. //字符串值string
  4. console.log("php", typeof "php");
  5. //布尔值boolean
  6. console.log(true, typeof true);
  7. //undefined值
  8. console.log(undefined, typeof undefined);
  9. //object值
  10. console.log(null, typeof null);
2.引用类型
  • 引用类型, 都是对象, 默认返回 object ,函数除外 function
  • 引用类型: 类似其它语言中的”复用类型”, 集合类型
  • 引用类型的数据,由一个或多个, 相同, 或不同类型的”原始类型”的值构造
  • 是一个典型的: 多值类型
类型 举例
数组 array [“phone”, “computer”, “car”]
对象 object {phone:”huawei”, compute:”联想”, car:”小鹏”}
函数 function total:function(){}
示例:
  1. //数组
  2. const arr = ["手机", 2, 5000];
  3. // 数组的索引是从0开始递增的正整数, 0, 1, 2
  4. console.log(arr[0]);//手机
  5. console.log(arr[1]);//2
  6. console.log(arr[2]);//5000
  7. //对象
  8. let obj = { name: "手机", num: 2, price: 5000 };
  9. // 对象 更像一个语义化的 数组
  10. console.log(obj["name"]);// 手机
  11. console.log(obj["num"]);//2
  12. console.log(obj["price"]);//5000
  13. //函数
  14. // 对象最吸引人的,不是数组的语义化封装, 而是对数据操作的封装, 方法(语法与函数是一样的)
  15. // 本质上来说, 对象, 就是变量与函数的封装, 内部, 变量->属性, 函数 -> 方法
  16. obj = {
  17. name: "手机",
  18. num: 3,
  19. price: 7000,
  20. // total: 方法,实际上还是一个属性,只不过它的值是一个函数
  21. total: function () {
  22. let str = `${this.name} 总计 ${this.num * this.price} 元`;
  23. return str;
  24. },
  25. };
  26. console.log(obj.total());//手机 总结 21000 元
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议