Blogger Information
Blog 18
fans 0
comment 2
visits 8735
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
常用函数类型和数据类型
弦知音的博客
Original
511 people have browsed it

常用函数类型和数据类型

1.常用函数类型

  1. // 1.命名函数
  2. function getName(username){
  3. return 'Hello ' + username;
  4. }
  5. console.log(getName('关羽'));
  6. // 2.匿名函数
  7. //1.将函数当值赋给一个变量
  8. let getUserName = function(username){
  9. return 'Hello ' + username;
  10. }
  11. console.log(getUserName('张飞'));
  12. //2. 声明并立即调用
  13. console.log(function(username){
  14. return 'Hello ' + username;
  15. }('赵云')); //在{}后直接跟()调用
  16. // 3.箭头函数,用来简化匿名函数的声明
  17. // 转化方法
  18. // 3-1. 去掉 function
  19. // 3-2. 在参数列表与大括号之间使用 '=>'
  20. // 如果只有一个参数,可以不写参数列表的括号
  21. // 如果没有参数,括号必须加上
  22. // 如果函数体只有一条语句, 大括号都可以不用
  23. // 匿名函数
  24. let sum = function(a,b){
  25. console.log(a+b);
  26. }
  27. // 转化
  28. sum = (a,b) => console.log(a+b);
  29. //调用
  30. sum(33,66);
  31. // 总结
  32. // 1. 如果函数需要多次调用, 用命名, 函数表达式, 都可以
  33. // 2. 如果代码要求,必须遵循"先声明, 再调用"的规则, 那就必须用"函数表达式"
  34. // 3. 如果只有完成一些特定的,一次性的工作, 不想留下任何痕迹, 用"IIFE", 模块
  35. // 4. 如果调用函数时,需要一个函数充当参数,例如:回调, 就可以使用箭头函数来简化 匿名函数的 声明

2.数据类型

  1. // 1. 原始类型: number, string, boolean,undefined, null
  2. // 1.1 number
  3. console.log(100);
  4. // 1.2 string
  5. console.log("马超");
  6. // 1.3 boolean
  7. console.log(20 > 5); // true
  8. // 1.4 undefined
  9. let a;
  10. console.log(a); //undefined
  11. // 1.5 null
  12. console.log(null); //null
  13. // 2. 引用类型: array, object, function
  14. // 一个变量保存的集合,并非单值,访问时不能直接访问,必须通过这个变量的引用来访问
  15. // 2.1 array
  16. const arr = [1, 2, 3];
  17. const arr1 = [1, [2, "超人", "abc"], true];
  18. //访问
  19. console.log(arr);
  20. console.log(arr1[1][1]); //超人
  21. // 引用类型判断不能用typeof
  22. console.log(typeof arr); // object
  23. console.log(Array.isArray(arr)); // true
  24. // 2.2 object
  25. // 先把对象想象成一个关联数组
  26. let obj = {
  27. id: 1,
  28. arr: [2, "超人", "abc"],
  29. name: "锦衣卫",
  30. "my tel": 13888888888,
  31. age: 18,
  32. };
  33. // 为了简化,并与数组区别,对象有自己的成员访问符: .
  34. console.log(obj.username); //对象访问方式
  35. console.log(obj["my tel"]); //数组访问方式
  36. function getUser(obj) {
  37. return "id = " + obj.id + ", name = " + obj.name + ", age = " + obj.age;
  38. }
  39. console.log(getUser(obj)); // id = 1, name = 锦衣卫, age = 18
  40. //在对象中可以使用变量this来引用对象自身
  41. obj = {
  42. id: 1,
  43. username: "jack",
  44. num: [1, 2, 3],
  45. isOk: true,
  46. getInfo: function () {
  47. return "id =" + this.id + ",username =" + this.username;
  48. },
  49. };
  50. console.log(obj.getInfo);
  51. //函数当返回值:闭包
  52. function fn() {
  53. let a = 1;
  54. return function () {
  55. //内部函数访问外部函数的值,导致外部函数不能释放,形成闭包
  56. return a++;
  57. };
  58. }
  59. console.log(fn());
  60. console.log(fn());
  61. //函数就是对象,对象就可以添加属性和方法
  62. let fn1 = function () {};
  63. fn1.myemail = "admin@php.cn"; //添加属性myemail
  64. fn1.getEmail = function () {
  65. console.log(this.myemail);
  66. }; //添加方法
Correcting teacher:PHPzPHPz

Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post