上上篇我们说到ESMAScript是JS的语法规划,JS中的变量、数据类型、语法规范、操作语句、设计模型等都是ES规定的,现在咱们聊一下JS中的变量和常量

变量(variable)

它不是具体值,只是一个用来存储具体值的容器或者代名词,因为它存储的值可以改变,所以称为变量

例如:王燕=我,如果王燕代表了另一个人的名字了,就是 王燕=另一人的代名词

常量

指不可改变的值,一旦赋值就不能再改变这个值,一般写面向对象的时候用的比较多,数字语义化,会定义为常量

基于JS语法规范,在JS中创建变量/常量有以下方式:

var  (ES3/5) 创建变量

function 创建函数,本质上函数名也是变量,只不过存储的值是函数类型的而已

let (ES6)创建变量

const   创建常量

import  基于ES6的模块规范导出需要的信息

class  基于ES6创建类

创建变量语法:

/*语法*/
var [变量名] = 变量值;
let [变量名] = 变量值;
const [变量名] = 变量值;
function 函数名(){函数体}; var num = 13; //以后n就代表13
num = 15;//n又代表了15,就不能代表13了
alert(num+15);//弹出25,此时n代表15 const totle = 30; //声明了一个常量,赋值为30
totle=50;//报错 Uncaught TypeError: Assignment to constant variable.(类型错误:不能给一个常量重新赋值,能够修改的就是变量了)

变量的命名规范:

1、严格区分大小写 例如:

var n=12;
var N=13;//两个n不是同一个变量

2、驼峰命名:命名的时候基于英文单词拼接成一个完整的名字,第一个单词字母小写,其余每一个有意义的单词首字母都大写,按照数字、字母、下划线或者$来命名,注意数字不能作为开头,尽可能用英文,不要用拼音,例如:

var studentInfo 
var student_info
var _studentInfo (一般约定俗称的,_开头的是公共变量)
var $student_Info (一般用来存储JQ元素)...

3、关键字保留字不可用

在js中,有一些字符用来完成或表达固定意义的,这样的字符叫做关键字,例如 var 、let 、const...

在js中,已经定义过的字符,由于考虑到扩展性,还没用到当前语法中,现在还不是关键字,但是以后可能会成为关键字的词,叫做保留字,例如 public、import、thorws...

/*关键字*/
function 、if 、else 、for、while 、break 、case 、catch 、continue 、defaule 、delete 、do 、finally ... /*保留字*/
class 、boolean 、byte 、char 、extends、final 、float 、double 、int 、super 、static 、super 、voatile....

4、语义化(具有一定意义的单词)

/*没有语义化的写法*/
var xsxx = jack;
var xsnl = 20; //过一段时间,你都不知道这是代表的啥玩意 /*具有语义化的写法*/ var studentName = jack ;
var studentAge =20 ;//根据单词的意思,就知道这是代表学生年龄的变量

规范命名规则,是写干净整洁的代码的第一步,行动起来,成为具有代码洁癖的码农 ~~~go go go

ECMAScript---变量的更多相关文章

  1. 匈牙利标记法定义ECMAScript变量前缀

    匈牙利标记法定义ECMAScript变量前缀 类型 前缀 示例 数组 a aArray 布尔型 b bMale 浮点型(数字)   f fTax 函数 fn fnSwap 整型(数字) i iAge ...

  2. dom 显示 与否 的对 ecmascript 变量的 监听

    dom 显示 与否  的对 ecmascript   变量的 监听

  3. ECMAscript 变量作用域

    使用var操作符声明的变量与未使用var操作符声明的变量区别 未使用var操作符声明 function test() { message='hi'; console.log(message); } c ...

  4. JS高程4.变量,作用域和内存问题(1)

    1.基本类型和应用类型的值 ECMAScript变量可能包含两种不同数据类型的值: 基本类型值--简单的数据段.(5种基本的数据类型,按值访问,因为可以操作保存在变量中的实际的值.) 引用类型值--多 ...

  5. 《JavaScript高级程序设计》 - 读书笔记 - 第4章 变量、作用域和内存问题

    4.1 基本类型和引用类型的值 JavaScript变量是松散类型的,它只是保存特定值的一个名字而已. ECMAScript变量包含两种数据类型的值:基本类型值和引用类型值.基本类型值指的是简单的数据 ...

  6. 《JavaScript高级程序设计》学习笔记(3)——变量、作用域和内存问题

    欢迎关注本人的微信公众号"前端小填填",专注前端技术的基础和项目开发的学习. 本节内容对应<JavaScript高级程序设计>的第四章内容. 1.函数:通过函数可以封装 ...

  7. javascript基础语法——变量和标识符

    × 目录 [1]定义 [2]命名规则 [3]声明[4]特性[5]作用域[6]声明提升[7]属性变量 前面的话 关于javascript,第一个比较重要的概念是变量,变量的工作机制是javascript ...

  8. JavaScript 参数传递与变量复制

            ECMAScript 变量可能包含两种不同数据类型的值:基本类型值和引用类型值. 基本类型值指的是简单的数据段,而引用类型值指那些可能由多个值构成的对象.         5 种基本数 ...

  9. js高级程序设计(四)变量、作用域和内存问题

    基本类型和引用类型的值 ECMAScript 变量可能包含两种不同数据类型的值:基本类型值和引用类型值.基本类型值指的是 Undefined . Null . Boolean . Number 和 S ...

  10. javascript的变量、作用域和内存问题

    基本类型和引用类型的值执行环境垃圾收集 ECMAScript 变量可能包含两种不同数据类型的值:基本类型值和引用类型值.基本类型值指的是简单的数据段引用类型值指那些可能由多个值构成的对象 基本数据类型 ...

随机推荐

  1. difflib python

    difflib -帮助进行差异化比较 这个模块提供的类和方法用来进行差异化比较,它能够生成文本或者html格式的差异化比较结果,如果需要比较目录的不同,可以使用filecmp模块. 例子: # -*- ...

  2. Netty源码解析—客户端启动

    Netty源码解析-客户端启动 Bootstrap示例 public final class EchoClient { static final boolean SSL = System.getPro ...

  3. Django配置MySQL数据库

    一.在settings.py中配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 数据库引擎 'NAME': ' ...

  4. Flask+APScheduler定时任务

    1.安装依赖 pip install flask_apscheduler 2.使用定时任务 ```python from flask import Flask from flask_apschedul ...

  5. what is the CCA?

    Clear Channel Assessment (CCA) is one of two carrier sense mechanisms in WLAN (or WiFi). It is defin ...

  6. 映射&集合

    哈希函数 通过哈希表可以实现 O(1) 复杂度的查找. 哈希函数构造方法:设计好的哈希函数的两个基本原则,计算简单+分布均匀 1. 直接定址法 用key自身的某个线性函数来定址,f(key) = a* ...

  7. Web前端开发工程师课程大纲

    PHP程序员雷雪松整理出来的一套独一无二的Web前端开发课程.本套Web前端开发课程专门为想励志成为优秀web前端工程师的学习者而总结归纳的,本套Web前端课程舍弃了一些不常用的即将废弃的HTML标签 ...

  8. [转载]关于ActiveMQ集群

    转载于 http://blog.csdn.net/nimmy/article/details/6247289 近日因工作关系,在研究JMS,使用ActiveMQ作为提供者,考虑到消息的重要,拟采用Ac ...

  9. 【0806 | Day 9】三张图带你了解数据类型分类和Python深浅拷贝

    一.数据类型分类 二.Python深浅拷贝

  10. Redis集群与spring的整合

    上一篇详细的赘述了Redis的curd操作及集群的搭建.下面我们开始将他整合到我们实际的项目中去.我的项目采用的是标准的ssm框架,ssm框架这里不说,直接开始整合. 首先在maven管理中将我们的j ...