Blogger Information
Blog 15
fans 0
comment 0
visits 10962
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
Javascript的变量、常量、作用域、函数(命名、匿名、箭头)的基本概念
P粉932932019
Original
705 people have browsed it

变量

  1. let a; // 声明变量
  2. a=10; // 第一次赋值:初始化
  3. let a = 10; // 简写:两步变一步
  4. a = 20; // 以后每次赋值就是:更新

命名规则:

  • 驼峰式:
    1、小驼峰:userName,用于变量、函数(动词+名词,如:getUserInfo())
    2、大驼峰:UserName,用于类、构造函数
  • 蛇形:
    1、user_name,多个单词之间用下划线

常量

  1. const APP_NAME = '商城';
  • 全部使用大写字母
  • 多个单词之间用下划线 如:USER_EMAIL
  • 常量不可更新
  • 实际开发中尽量使用常量,在DOM操作中会把变量作为对象的属性来处理。

作用域

  • 块:{},代码块外部不能访问内部变量
  • 函数:f(){},函数内部的声明为私有/局部变量,外部不可访问
  • 全局:let a=10,是在代码块、函数外部声明的
  • 作用域链:在代码执行的时候,查找变量优先从内部作用域开始查找

标识符

  • 可以使用字母、数字、下划线、$
  • 不可以使用数字开头

函数

  • 命名函数
  1. function getUserName(参数1,参数2...){
  2. ..//操作
  3. return //返回值必须有,否则将返回undefined
  4. };
  5. getUserName(参数) //调用,给参数
  • 匿名函数:
  1. 形式一:
    需要放进一个容器(变量)中
    1. let getUserName = function (参数1,参数2...){
    2. ..//操作
    3. return
    4. };
  2. 形式二:
    a. 不需要放进容器(变量)中,是只用一次的匿名函数,为“立即执行函数”简称IIFE。
    b. 它可以创建一个临时作用域,适合写模块。
    c. 用法:用大括号()包裹起来,后面加上(参数)即可。
    1. (
    2. function (参数){
    3. ..//操作
    4. return
    5. }(传参)
    6. );
  • 箭头函数:就是匿名函数的简化形式/语法糖

下面这段代码是匿名函数正常书写模式

  1. let getUserName = function (参数1,参数2...){
  2. ..//操作
  3. return
  4. };

把上面代码改成成箭头函数

  1. getUserName = (参数...) => {
  2. ..//操作
  3. return
  4. };
  5. console.log(getUserName('传参'));

√ 特殊情况1:
如果操作只有一条语句,可以省去大括号{}和return

  1. f = (x,y) => x+y;
  2. console.log(f(10,20))

√ 特殊情况2:
如果只有一个参数,可以省去参数列表的圆括号()

  1. f = x => 'x的值是' + x;
  2. console.log(f(10));

√ 特殊情况3:
如果没有参数,不能省去参数列表的圆括号()

  1. f = () => '这是没有参数的箭头函数,一句话代码';
  2. console.log(f());
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