首页 > 技术文章 > javascript基础-变量

sunhuan-123 2020-04-04 20:51 原文

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; // 报错!!!

变量命名规范:(匈牙利命名法:驼峰命名法

  • 为什么要存在命名规范?
  • 你的代码并不是只有你一个人看,为了团队协作顺利,需要命名具有特殊的含义

变量名可以任意取名,但要遵循命名规则:

  1. 变量必须使用字母、下划线(_)或者美元符($)开始。
  2. 然后可以使用任意多个英文字母、数字、下划线(_)或者美元符($)组成。
  3. 不能使用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 // 可以加前缀,避免跟关键字或者保留字冲突

关键字:

在这里插入图片描述

保留字:

在这里插入图片描述

注意:

  1. 在JS中区分大小写,如变量myname与myName是不一样的,表示是两个变量。

  2. 变量虽然也可以不声明,直接使用,但不规范,需要先声明,后使用。

自己整理的知识点,如有问题欢迎评论指出,一起讨论学习。

推荐阅读