博客列表 >JS003: 回调 + 闭包 插值和模板字面量的应用

JS003: 回调 + 闭包 插值和模板字面量的应用

异乡客
异乡客原创
2022年06月06日 09:47:43735浏览

// !数据类型:只有两种

  1. // ! 1 原始类型
  2. console.log(124,typeof "php");
  3. obj = {"my email":"teddy@qq.com"};
  4. console.log(obj["my email"]);
  5. // !对象就是变量和函数的封装
  6. // !变量---属性
  7. // !函数--方法
  8. obj1 = {
  9. name:"手机",
  10. num: 2,
  11. price:8000,
  12. total:function(){
  13. // let str = obj1.name + '总计:' + obj1.num*obj1.price+'元';
  14. //!!!!!!!!!!!!!!!!111 插值和模板字面量的应用
  15. let str =`${this.name}总计${this.num*this.price}元。`;
  16. return str;
  17. },
  18. };
  19. console.log(obj1.total());
  20. // !函数:是一种数据类型,也是对象
  21. console.log(typeof function(){});
  22. console.log(function(){} instanceof Object);
  23. // !!!!!!!!!!!!!应用场景1:函数当参数使用 回调,
  24. function f4(callback) {
  25. // 参数callback是一个函数
  26. console.log(callback());
  27. }
  28. // 调用f4,匿名函数当f4的参数
  29. f4(
  30. function (test) { return "hello" ;}
  31. );
  32. // !!!!!!!!!!!应用场景2:函数当返回值,闭包
  33. function f5() {
  34. let a = 1;
  35. return function(){
  36. return (a++);
  37. };
  38. }
  39. console.log(f5);
  40. const f6 = f5();
  41. console.log(f6());
  42. console.log(f6());
  43. console.log(f6());
  44. console.log(f6());
  45. console.log(f6());
  46. // 回调 + 闭包 以上是函数当成 值 来用的经典应用场景
  47. // 以下是函数当对象用:属性和方法
  48. function func(a,b) {
  49. return a+b;
  50. }
  51. console.log(func.name);
  52. console.log(func.length);
  53. func.email = '123@qq.com';
  54. console.log(func.email);

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议