web开发JavaScript入门02变量与注释

JavaScript 的基本语法

语句

JavaScript 程序的执行单位为行(line),也就是一行一行地执行。一般情况下,每一行就是一个语句。

语句(statement)是为了完成某种任务而进行的操作,比如下面就是一行赋值语句

var a = 1 + 3;

这条语句先用var命令,声明了变量a,然后将1 + 3的运算结果赋值给变量a

1 + 3叫做表达式(expression),指一个为了得到返回值的计算式。语句和表达式的区别在于,前者主要为了进行某种操作,一般情况下不需要返回值;后者则是为了得到返回值,一定会返回一个值。凡是 JavaScript 语言中预期为值的地方,都可以使用表达式。比如,赋值语句的等号右边,预期是一个值,因此可以放置各种表达式。

语句以分号结尾,一个分号就表示一个语句结束。多个语句可以写在一行内

var a = 1 + 3 ; var b = 'abc';

分号前面可以没有任何内容,JavaScript 引擎将其视为空语句

;;;

上面的代码就表示3个空语句。

表达式不需要分号结尾。一旦在表达式后面添加分号,则 JavaScript 引擎就将表达式视为语句,这样会产生一些没有任何意义的语句

1 + 3;
'abc';

上面两行语句只是单纯地产生一个值,并没有任何实际的意义

JavaScript注释

源码中被 JavaScript 引擎忽略的部分就叫做注释,它的作用是对代码进行解释,提高代码的可读性。JavaScript 提供两种注释的写法:一种是单行注释,用//起头;另一种是多行注释,放在/**/之间

单行注释

单行注释的注释方式如下

// 我是单行注释,不想被 JS引擎 执行,所以 注释起来	

多行注释

/*
  我是多行注释,不想被 JS引擎 执行,所以 注释起来
  我是多行注释,不想被 JS引擎 执行,所以 注释起来
*/

扩展

由于历史上 JavaScript 可以兼容 HTML 代码的注释,所以<!---->也被视为合法的单行注释

x = 1; <!-- x = 2;
--> x = 3;

上面代码中,只有x = 1会执行,其他的部分都被注释掉了。

需要注意的是,-->只有在行首,才会被当成单行注释,否则会当作正常的运算

JavaScript输入输出语句

为了方便信息的输入输出,JS中提供了一些输入输出语句,其常用的语句如下

方法说明归属
alert(msg)浏览器弹出警示框浏览器
console.log(msg)浏览器控制台打印输出信息浏览器
prompt(info)浏览器弹出输入框,用户可以输入浏览器

注意:alert() 主要用来显示消息给用户,console.log() 用来给程序员自己看运行时的消息

变量

什么是变量

白话:变量就是一个装东西的盒子。

通俗:变量是用于存放数据的容器。 我们通过 变量名 获取数据,甚至数据可以修改

变量在内存中的存储

本质:变量是程序在内存中申请的一块用来存放数据的空间。类似我们酒店的房间,一个房间就可以看做是一个变量

变量的使用

  • 变量的声明
  • 变量的赋值

声明变量

//  声明变量  
var age; //  声明一个 名称为age 的变量  
  • var 是一个 JS关键字,用来声明变量( variable 变量的意思 )。使用该关键字声明变量后,计算机会自动为变量分配内存空间,不需要程序员管
  • age 是程序员定义的变量名,我们要通过变量名来访问内存中分配的空间

赋值

age = 10; // 给 age  这个变量赋值为 10    
  • = 用来把右边的值赋给左边的变量空间中 此处代表赋值的意思
  • 变量值是程序员保存到变量空间里的值

变量的初始化

var age  = 18;  // 声明变量同时赋值为 18
// 声明一个变量并赋值, 我们称之为变量的初始化

变量语法扩展

  • 更新变量

    • 一个变量被重新复赋值后,它原有的值就会被覆盖,变量值将以最后一次赋的值为准

    • var age = 18;
      
      age = 81;   // 最后的结果就是81因为18 被覆盖掉了     
      
  • 同时声明多个变量

    • 同时声明多个变量时,只需要写一个 var, 多个变量名之间使用英文逗号隔开

    • var age = 10,  name = 'zs', sex = 2;  
      
  • 声明变量特殊情况

    情况说明结果
    var age ; console.log (age);只声明 不赋值undefined
    console.log(age);不声明 不赋值 直接使用报错
    age = 10; console.log (age);不声明 只赋值10

变量命名规范

  • 由字母(A-Za-z)、数字(0-9)、下划线(_)、美元符号( $ )组成
  • 严格区分大小写
  • 不能 以数字开头
  • 不能 是关键字、保留字
  • 变量名必须有意义
  • 遵守驼峰命名法。首字母小写,后面单词的首字母需要大写

变量提升

JavaScript 引擎的工作方式是,先解析代码,获取所有被声明的变量,然后再一行一行地运行。这造成的结果,就是所有的变量的声明语句,都会被提升到代码的头部,这就叫做变量提升(hoisting)

console.log(a);
var a = 1;

上面代码首先使用console.log方法,在控制台(console)显示变量a的值。这时变量a还没有声明和赋值,所以这是一种错误的做法,但是实际上不会报错。因为存在变量提升,真正运行的是下面的代码

var a;
console.log(a);
a = 1;

最后的结果是显示undefined,表示变量a已声明,但还未赋值

关键字和保留字

标识符

标识(zhi)符:就是指开发人员为变量、属性、函数、参数取的名字。

标识符不能是关键字或保留字

关键字

关键字:是指 JS本身已经使用了的字,不能再用它们充当变量名、方法名

breakcase、catch、continuedefaultdeletedoelse、finally、forfunctionifininstanceofnewreturnswitchthisthrowtrytypeofvarvoidwhilewith 

保留字

保留字:实际上就是预留的“关键字”,意思是现在虽然还不是关键字,但是未来可能会成为关键字,同样不能使用它们当变量名或方法名

boolean、byte、char、class、const、debugger、double、enum、export、extends、fimal、float、goto、implements、import、int、interface、long、mative、package、private、protected、public、short、static、super、synchronized、throws、transient、volatile 

注意:如果将保留字用作变量名或函数名,那么除非将来的浏览器实现了该保留字,否则很可能收不到任何错误消息。当浏览器将其实现后,该单词将被看做关键字,如此将出现关键字错误

注意:javascript中name既不是保留字,也不是关键字,因此用作变量时并不会报错;但是在Firefox、Safari、Chrome和Opera中都给函数定义了一个非标准的name属性,通过这个属性可以访问到给函数指定的名字,因此在这些浏览器中不能使用name作为变量名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值