javascript基础-变量
javascript基础-变量
1、什么是变量
什么是变量? 从字面上看,变量是可变的量;从编程角度讲,变量是用于存储某种/某些数值的存储器。
比如说我现在需要500ml的水,可是你要怎样把这500ml水给我?肯定是需要一个容器,承载这500ml的水;然后给到我。这个容器可以是碗,可以是杯子或者其他的,当我需要的时候我可以给你说,把碗里装上500ml的水给我。这种思想就叫做变量,首先声明一个变量(一个容器),给这个变量(容器)起名叫做碗或者杯子或者其他名字,然后给变量赋值(给碗装入500ml水);当我需要这些值的时候(需要水的时候)直接拿到这个变量名(碗)就行;
2、变量声明
- 定义变量使用关键字var
var a = "hello world";
//var =>关键字
//a =>变量名
//= =>赋值
//"hello world" =>变量的值
- 变量可以先声明再赋值,如下:
var a;
a = "hello world";
var b = 6;
- 变量可以重复赋值(可变的量),如下:
var a;
a = "hello world";
a = 6;
//后面的会将前面的覆盖
变量使用小技巧:
- 声明一串变量:var a=1,b=2,c=3;
- 声明一串变量不赋值:var a,b,c;用的时候再赋值a=1;b=2;c=3;
- JavaScript中的 ‘’=‘’ 和我们数学中的 ‘’ = ‘’不一样,在JavaScript中‘’=‘’的作用是赋值(取别称)。
- var a = "hello world"; 这句话分成两个部分。
- 左值:在等号左侧,是声明一个变量并且起名
- 右值 :在等号右侧,是存放进变量中的东西(给变量赋值)
变量的数据类型
因为存放进变量中的数据是放在内存中的,计算机只识别0,1,所以需要对不同类型的数据进行编码,编码的结果会导致所需空间不同,所以JavaScript中分成很多种数据类型,以便计算机储存时使用
- 数字类型(number):1234567890 int(integer):整型 float:浮点型(小数)
- 字符类型(string):'123456',"字符串类型",.....(有单引号或者双引号)
- 未定义类型(undefined):这是一种特殊类型,当变量被声明但是没有被赋值的时候,那么该变量的类型为undefined;
- 布尔值类型(boolean):true,false;
- 对象类型:object;
- 数组类型(array);
- 函数类型:Function;
- symbol --- ES6新增
- ...
怎样直观地区分不同的数据类型(typeof)
- 关键字 typeof
var str="hello world";
console.log(typeof str);
//=>"string"
var num=123;
console.log(typeof num);
//=>"number"
var bool=true;
console.log(typeof bool);
//=>"boolean"
//var under;
var under=undefined;
console.log(typeof under);
//=>"undefined"
var obj={};
console.log(typeof obj);
//=>"object"
var arr=[];
console.log(typeof arr);
//=>"object"
var nul=null;
console.log(typeof nul);
//=>"object"
var fn=function(){};
console.log(typeof fn);
//=>"function"
- typeof返回有六种值: number、string、boolean、undefined、object、function
- js有五(六)种基本数据类型:number、string、boolean、undefined、null、(symbol)
两种引用类型:object、function - 从另外一个角度来说:JS有两种特殊数据类型: null、undefined
js是一种弱类型的语言 如下:
- 声明变量的时候无需声明类型
- 同一个变量可以修改存储不同类型的数据
var a = "hello world";//字符串型
a = 123;//可以再赋值成数值型,会覆盖前面;
- 类比强类型语言,如:Java
String a = "Hello world";
a = 123; // 报错!!!
变量命名规范:(匈牙利命名法:驼峰命名法)
- 为什么要存在命名规范?
- 你的代码并不是只有你一个人看,为了团队协作顺利,需要命名具有特殊的含义
变量名可以任意取名,但要遵循命名规则:
- 变量必须使用字母、下划线(_)或者美元符($)开始。
- 然后可以使用任意多个英文字母、数字、下划线(_)或者美元符($)组成。
- 不能使用JavaScript关键词与JavaScript保留字。
var a1 // ok
// var 1a // no 不能以数组开头
var $1 // ok
var _1 // ok
// var a% // no 不能包含除&_数字字母以外的字符
// 命名习惯可以使用驼峰命名
var userName;
var yongHuMing;
// var yonghuName // 这种命名尽量不要有
// var UserName // 大驼峰,一般用户类的命名
// var var = 20 // no var是js的关键字不可以使用
var xVar // 可以加前缀,避免跟关键字或者保留字冲突
关键字:
保留字:
注意:
-
在JS中区分大小写,如变量myname与myName是不一样的,表示是两个变量。
-
变量虽然也可以不声明,直接使用,但不规范,需要先声明,后使用。
自己整理的知识点,如有问题欢迎评论指出,一起讨论学习。