js变量

作者: 過尽千帆_YL | 来源:发表于2021-04-21 22:59 被阅读0次

    1.变量的使用

    1.1声明变量

     var age ; //声明一个名称为age的变量
    
    • var 是一个js关键字,用来声明变量(variable 变量的意思)。使用该关键字声明变量后,计算机会自动为变量分配内存空间
    • age 是程序员自定义的变量名字

    1.2变量的赋值

    age = 10 ; // 给age 这个变量赋值为10
    
    • =是把右边的值赋给左边的变量
    • 变量是程序员保存到变量空间里的值

    1.3变量的初始化

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

    1.4变量语法扩展

    • 更新变量
      一个变量被重新复赋值后,它原有的值就会被覆盖,变量值将以最后一次赋的值为准
    var age = 18;
    
    age = 81;   // 最后的结果就是81因为18 被覆盖掉了   
    
    • 同时声明多个变量
      同时声明多个变量时,只需要写一个 var, 多个变量名之间使用英文逗号隔开
    var age = 10,  name = 'mingzi', sex = 2;  
    
    • 声明变量特殊情况
    情况                          | 说明           |结果
    ------------------------------|----------------|----------
    var  age ; console.log (age); | 只声明 不赋值  | undefined
    console.log(age)              | 不声明 不赋值  直接使用  | 报错
    age  = 10; console.log (age); | 不声明   只赋值  | 10
    

    1.5变量命名规范

    规则:

    • 由字母(A-Za-z)、数字(0-9)、下划线(_)、美元符号( $ )组成,如:usrAge, num01, _name

    • 严格区分大小写。var app; 和 var App; 是两个变量

    • 不能 以数字开头。 18age 是错误的

    • 不能 是关键字、保留字。例如:var、for、while

    • 变量名必须有意义。 MMD BBD nl → age

    • 遵守驼峰命名法。首字母小写,后面单词的首字母需要大写。 myFirstName

    2. 数据类型

    2.1 简单数据类型

    • 简单数据类型(基本数据类型)
    简单数据类型 说明 默认值
    Number 数字型,包括整型值和浮点型值, 如21,0.21 0
    Boolean 布尔值类型,如true ,false,等价于1和0 false
    string 字符串类型,如‘张三,字符串都带引号 ''
    Undefined var a;声明了变量但没有给值,此时 a=undefined undefined
    Null var a=null ;声明了变量a为空值 null
    • 数字型 Number

    JavaScript 数字类型既可以用来保存整数值,也可以保存小数(浮点数)

    var age = 21;       // 整数
    var Age = 21.3747;  // 小数     
    
    1. 数字型进制

    最常见的进制有二进制、八进制、十进制、十六进制。

      // 1.八进制数字序列范围:0~7
     var num1 = 07;   // 对应十进制的7
     var num2 = 019;  // 对应十进制的19
     var num3 = 08;   // 对应十进制的8
      // 2.十六进制数字序列范围:0~9以及A~F
     var num = 0xA;   
    
    1. 数字型范围

    JavaScript中数值的最大和最小值

    alert(Number.MAX_VALUE); // 1.7976931348623157e+308
    alert(Number.MIN_VALUE); // 5e-324
    
    • 最大值:Number.MAX_VALUE,这个值为: 1.7976931348623157e+308
    • 最小值:Number.MIN_VALUE,这个值为:5e-32
    1. 数字型三个特殊值
    alert(Infinity);  // Infinity
    alert(-Infinity); // -Infinity
    alert(NaN);       // NaN
    
    • Infinity ,代表无穷大,大于任何数值
    • -Infinity ,代表无穷小,小于任何数值
    • NaN ,Not a number,代表一个非数值
    1. isNaN

    用来判断一个变量是否为非数字的类型,返回 true 或者 false

    var usrAge = 21;
    var isOk = isNaN(userAge);
    console.log(isNum);            // false ,21 不是一个非数字
    var usrName = "andy";
    console.log(isNaN(userName));  // true ,"andy"是一个非数字
    
    • 字符串型 String

    字符串型可以是引号中的任意文本,其语法为 双引号 "" 和 单引号''

    var strMsg = "我爱北京天安门~";  // 使用双引号表示字符串
    var strMsg2 = '我爱吃猪蹄~';    // 使用单引号表示字符串
    // 常见错误
    var strMsg3 = 我爱大肘子;       // 报错,没使用引号,会被认为是js代码,但js没有这些语法
    

    因为 HTML 标签里面的属性使用的是双引号,JS 这里我们更推荐使用单引号。

    1. 字符串引号嵌套
      JS 可以用单引号嵌套双引号 ,或者用双引号嵌套单引号 (外双内单,外单内双)
    var strMsg = '我是"高帅富"程序猿';   // 可以用''包含""
    var strMsg2 = "我是'高帅富'程序猿";  // 也可以用"" 包含''
    //  常见错误
    var badQuotes = 'What on earth?"; // 报错,不能 单双引号搭配
    
    1. 字符串转义符

    类似HTML里面的特殊字符,字符串中也有特殊字符,我们称之为转义符。

    转义符都是 \ 开头的,常用的转义符及其说明如下:

    转义符 解释说明
    \n 换行符,n 是 newline 的意思
    \ \ 斜杠 \
    ' '单引号
    "” 双引号
    \t tab 缩进
    \b 空格 ,b 是 blank 的意思
    1. 字符串长度
     //字符串是由若干字符组成的,这些字符的数量就是字符串的长度。通过字符串的 length 属性可以获取整个字符串的长度。
    
    var strMsg = "我是帅气多金的程序猿!";
    alert(strMsg.length); // 显示 11
    
    1. 字符串拼接
    • 多个字符串之间可以使用 + 进行拼接,其拼接方式为 字符串 + 任何类型 = 拼接之后的新字符串
    • 拼接前会把与字符串相加的任何类型转成字符串,再拼接成一个新的字符串
    //1.1 字符串 "相加"
    alert('hello' + ' ' + 'world'); // hello world
    //1.2 数值字符串 "相加"
    alert('100' + '100'); // 100100
    //1.3 数值字符串 + 数值
    alert('11' + 12);     // 1112 
    
    • +号总结口诀:数值相加 ,字符相连
    1. 字符串拼接加强
    console.log('pink老师' + 18);           // 只要有字符就会相连 
    var age = 18;
    // console.log('pink老师age岁啦');       // 这样不行哦
    console.log('pink老师' + age);          // pink老师18
    console.log('pink老师' + age + '岁啦');  // pink老师18岁啦
    
    • 经常会将字符串和变量来拼接,变量可以很方便地修改里面的值
    • 变量是不能添加引号的,因为加引号的变量会变成字符串
    • 如果变量两侧都有字符串拼接,口诀“引引加加 ”,删掉数字,变量写加中间
    1. 布尔型Boolean
      布尔类型有两个值:true 和 false ,其中 true 表示真(对),而 false 表示假(错)。

    布尔型和数字型相加的时候, true 的值为 1 ,false 的值为 0。

    console.log(true + 1);  // 2
    console.log(false + 1); // 1
    
    1. Undefined和 Null
      一个声明后没有被赋值的变量会有一个默认值undefined ( 如果进行相连或者相加时,注意结果)
    var variable;
    console.log(variable);           // undefined
    console.log('你好' + variable);  // 你好undefined
    console.log(11 + variable);     // NaN
    console.log(true + variable);   //  NaN
    

    一个声明变量给 null 值,里面存的值为空(学习对象时,我们继续研究null)

    var vari = null;
    console.log('你好' + vari);  // 你好null
    console.log(11 + vari);     // 11
    console.log(true + vari);   //  1
    

    3.获取变量数据类型

    • 获取检测变量的数据类型

    typeof 可用来获取检测变量的数据类型

    var num = 18;
    console.log(typeof num) // 结果 number  
    

    不同类型的返回值

    类型 结果
    String typeof ''小白'' ''string''
    number typeof 18 ''number''
    Boolean typeof true ''boolean''
    Undefined typeof undefined ''undefined''
    Null typeof null ''object''
    • 字面量
      字面量是在源代码中一个固定值的表示法,通俗来说,就是字面量表示如何表达这个值。

    • 数字字面量:8, 9, 10

    • 字符串字面量:'程序员', "大前端"

    • 布尔字面量:true,false

    4.数据类型转换

    4.1 什么是数据类型转换

    通常会实现3种方式的转换:

    • 转换为字符串类型
    • 转换为数字型
    • 转换为布尔型

    4.2转换为字符串

    方式 说明 案例
    toString() 转成字符串 var num=1;alert(num.toString());
    String()强制转换 转成字符串 var num=1;alert(num.String(num));
    加号拼接字符串 和字符串拼接的结果都是字符串 var num=1;alert(num+"我是字符串"); /* 常用*/
    • toString() 和 String() 使用方式不一样。
    • 三种转换方式,更多第三种加号拼接字符串转换方式, 这一种方式也称之为隐式转换。

    4.3 转换为数字型(重点)

    • parseInt 可以把字符串转换成数值型,得到的只能是整数,还可以去掉数值后面的单位

    • parseFloat 可以保留数值后面的小数。也可以去掉数值后面的单位

    方式 说明 案例
    parseInt(string)函数 将string类型转成整数数值型 parselnt('78')
    parseFloat函数 将string类型转成浮点数数值类型 parseFloat('78.21')
    Number强制转换函数 将string类型转成数值型 Number('12')
    js 隐式转换(- * /) 利用算术运算隐式转换为数值型 '12'- 0

    4.4 转换为布尔型

    Boolean()函数     其他类型换成布尔值    boolean('true')
    

    1,代表空、否定的值会被转换为 false ,如 ''、0、NaN、null、undefined

    2,其余值都会被转换为 true

    console.log(Boolean('')); // false
    console.log(Boolean(0)); // false
    console.log(Boolean(NaN)); // false
    console.log(Boolean(null)); // false
    console.log(Boolean(undefined)); // false
    console.log(Boolean('小白')); // true
    console.log(Boolean(12)); // true
    

    相关文章

      网友评论

          本文标题:js变量

          本文链接:https://www.haomeiwen.com/subject/gostrltx.html