以前 会常说,定义一个变量 声明一个变量 但从未注意到这其实是有区别的

var a = 1;

很常见吧!

但是

你是否想过,上面这句代码在运行的时候到底发生了什么?
你是否知道,就这句代码而言,“声明变量 a”“定义变量 a”这两个说法哪一个才是正确的?

•下例叫做 “声明变量”:
var a; //此时 alert(a)  弹出 未定义
•下例叫做 “定义变量”:
var a = 1;  //此时 alert(a)  弹出 1
•声明:是指你声称某样东西的存在,比如一个变量或一个函数;但你没有说明这样东西到底是什么,仅仅是告诉解释器这样东西存在而已;
•定义:是指你指明了某样东西的具体实现,比如一个变量的值是多少,一个函数的函数体是什么,确切的表达了这样东西的意义。

总结:

var a;            // 这是声明
a = 1;            // 这是定义(赋值)
var a = 1;        // 合二为一:声明变量的存在并赋值给它

重点来了:当你以为你只做了一件事情的时候(var a = 1),实际上解释器把这件事情分解成了两个步骤,一个是声明(var a),另一个是定义(a = 1)。

转载于:https://www.cnblogs.com/lovelgx/articles/6351429.html

函数进阶学习之二 声明 定义相关推荐

  1. Mysql进阶学习(二)条件查询

    Mysql进阶学习(二)条件查询 进阶2:条件查询 一.按条件表达式筛选 案例1:查询工资>12000的员工信息 案例2:查询部门编号不等于90号的员工名和部门编号 二.按逻辑表达式筛选 案例1 ...

  2. JavaScript进阶学习(二)—— 基于原型链继承的js工具库的实现方法

    文章来源:小青年原创 发布时间:2016-07-03 关键词:JavaScript,原型链,jQuery类库 转载需标注本文原始地址: http://zhaomenghuan.github.io... ...

  3. C++进阶学习(二)----C到C++II

    来源:微信公众号「编程学习基地」 C到C++II 结构,联合,枚举 C++结构体 C++联合 C++枚举 bool类型 内联 重载 缺省参数和哑元 哑元 引用 引用特点 引用做参数 引用做函数返回值 ...

  4. mysql 事b务 查询_MySQL进阶学习笔记二(包括连接查询、子查询、联合查询、事务、存储过程)...

    1.高级查询 (1)了解笛卡尔积:笛卡尔乘积是指在数学中,两个集合X和Y的笛卡尔积(Cartesian product),又称直积,表示为X × Y,第一个对象是X的成员而第二个对象是Y的所有可能有序 ...

  5. PyTorch 进阶学习(二)————STN:空间变换网络(Spatial Transformer Network)

    文章目录 数据集的加载 空间变换网络的介绍 定义网络 训练和测试模型 可视化 STN 结果 官方文档地址: https://pytorch.org/tutorials/intermediate/spa ...

  6. 算法学习(二)快速排序(上)

    快速排序采用的思想是分而治之. 1)将一整个大的无序序数组,根据数组中的某一个值,将数组分成两部分,一部分比这个值小,一部分比这个值大. 2)然后再对这两部分各自进行同样的操作,而当每一部分都有序之后 ...

  7. Android程序员该如何进阶学习以预防35岁中年职场危机?

    一.大家都在担心的问题 不只是Android,很多程序员都在担心业界的"35岁危机",担心自己到35岁后就被市场淘汰. 比如最近就经常被大家问到这样的问题,比如这样的: 大佬好,目 ...

  8. 带你学习javascript的函数进阶(二)

    上一篇文章分享了<带你学习Javascript中的函数进阶(一)>,今天继续学习javascript的函数进阶的内容. 文章目录 1 严格模式 1.1 什么是严格模式 1.2 开启严格模式 ...

  9. amazeui学习笔记二(进阶开发4)--JavaScript规范Rules

    amazeui学习笔记二(进阶开发4)--JavaScript规范Rules 一.总结 1.注释规范总原则: As short as possible(如无必要,勿增注释):尽量提高代码本身的清晰性. ...

最新文章

  1. 基于多篇经典论文综述Attention模型方法(附源码)
  2. 《系统集成项目管理工程师》必背100个知识点-78配置项的版本控制
  3. 计算机网络复习_物理层
  4. 偏最小二乘 非线性 matlab,求助:Matlab偏最小二乘程序哪错了
  5. import caffe ImportError: No module named 'skimage'
  6. 2017二级计算机考试题,2017计算机二级考试MSOffice真题练习及答案
  7. 怎么做圆形二维码_圆形吊顶怎么做?装修网盘点圆形吊顶安装注意事项
  8. FineUI小技巧(3)表格导出与文件下载
  9. 用友u8怎么导出凭证_CASE11 用友U8导入期初档案凭证批量作废编辑自动现流(5/5)...
  10. LaTeX 各种命令,符号
  11. 第四天 游戏策划学习
  12. 《全网首发》基于SEIR(SIR)对新冠肺炎的分析和预测
  13. Java虚拟机(JVM)的类加载机制LLI
  14. 再生龙备份linux文件多大,使用再生龙Clonezilla备份还原Linux系统
  15. Signal Processing投稿经历
  16. 支付宝小程序分享转发
  17. lambda正序 倒序 根据自定义大写一二三数组排序
  18. 前端利用Canvas+Video合并流实现截屏和录屏功能
  19. jQuery基本介绍
  20. matlab抛物偏微分方程,抛物型方程差分求解 跪求MATLAB解抛物型偏微分方程的程序...

热门文章

  1. Mingw-W64编译Windows程序提示:undefined reference to `__imp_GetStockObject' 的解决方法
  2. 图像处理与计算机视觉开源软件库及学习站点
  3. 小波变换 完美通俗讲解 之 二
  4. pythontuple数据类型_Python数据类型之元组的详细介绍
  5. 027_Badge标记
  6. android layout include merge,Android 布局优化之include与merge
  7. 如何为linux 桌面文件内存,linux - 桌面Linux发行版中.desktop文件的功能是什么? - 堆栈内存溢出...
  8. mongo mysql 条件查询效率_mongodb查询条件对查询效率的影响
  9. 根据各工序时间画aoe网_曲靖被动防护网RXI150被动网厂家
  10. Dell R240 1U机架式服务器 资料