• 从零开始学 Web 之 JavaScript(二)变量


    大家好,这里是「 Daotin的梦呓 」从零开始学 Web 系列教程。此文首发于「 Daotin的梦呓 」公众号,欢迎大家订阅关注。在这里我会从 Web 前端零基础开始,一步步学习 Web 相关的知识点,期间也会分享一些好玩的项目。现在就让我们一起进入 Web 前端学习的冒险之旅吧!

    一、变量

    1、变量的声明和初始化

    var number;               // 变量的声明,没有赋值
    var name = "Daotin"; // 变量的初始化
    

    2、命名规则(驼峰命名)

    • 变量命名必须以字母或是**下标符号 "_" 或者 "$" 为开头。
    • 变量名长度不能超过 255 个字符。
    • 变量名中不允许使用空格,首个字不能为数字。
    • 不用使用脚本语言中保留的关键字及保留符号作为变量名。
    • 变量名区分大小写。
    • 汉语可以作为变量名。但是不建议使用!

    3、数据类型

    查看数据类型的方法: typeof name;typeof(name);

    PS:null 的数据类型是 Object。

    基础数据类型:
    String,Number,Boolean,unsigned、null

    复杂数据类型:
    Object,function,Array,Date,Error 等


    4、Number

    4.1、进制

    var num = 10;          // 十进制
    var num = 012;         // 八进制:0开头
    var num = 0xA;         // 十六进制:0x开头
    

    4.2、数值范围

    最小值: Number.MIN_VALUE ,这个值为: 5e-324
    最大值: Number.MAX_VALUE ,这个值为: 1.7976931348623157e+308

    无穷大Infinity
    无穷小-Infinity

    4.3、不要用小数去验证小数

    var num1 = 0.1;
    var num2 = 0.2;
    console.log(num1+num2); // 0.30000000000000004
    console.log(0.07*100); // 7.000000000000001
    

    4.4、NaN

    NaN:(Not a Number)本来应该得到一个数值的,但是结果却并不是一个数值。

    console.log("abc"/18); // 结果是NaN
    

    1、undefined 和任何数值计算为 NaN;
    2、NaN 与任何值都不相等,包括 NaN 本身。
    3、isNaN(); 任何不能被转换为数值的值都会导致这个函数返回 true。


    5、String

    1. 使用单引号或者双引号均可。
    2. 获取字符串的长度使用 变量名.length
    3. 无法输出的字符,记得使用转义字符( , \, ", 等)
    4. 字符串拼接可以使用 + ,像在 Java 一样。
    5. 当一个是字符串,另一个是数字,并且使用 乘,减,除 号的时候,字符串会转换成数字进行计算,转换失败返回NaN。
    6. js 没有字符类型只有字符串类型,字符串使用 "" 或者 '' 都是可以的。
    7. 字符串是常量不可变的。

    示例:

    var str = "hello";
    str[0] = "w";
    console.log(str); // 还是 hello
    
    var str = "hello";
    str = "world";
    console.log(str); // 是 world,这个不是改变了当前str地址的字符串的值,而是str指向了新的字符串,旧的字符串的值仍然没有更改。
    

    6、Boolean

    Boolean类型只有两个字面量: true 和 false 。但是所有类型均有与这两个 Boolean 值等价的值。

    下面类型为 true:true、除0数字、"something"、Object(任何对象)
    下面类型为 false:false、0 、""(空字符串)、undefined 、null、NaN


    7、undefined 与 null

    虽然 undefined 和 null 都为 false,但是他们的区别是:

    1. 在进行数字运算的时候,null + 10 = 10;undefined + 10 = NaN.
    2. 任何数据类型和 undefined 运算都是 NaN;
    3. 任何值和 null 运算,null 可看做 0 运算。

    8、数据类型转换

    8.1、其他类型转换成String

    1. 变量+"" 或者 变量+"其他变量"
    2. String(变量)
    3. 变量.toString(); // 注意:undefined 和 null 不可以
    var bool = true;
    var num = 111;
    var aaa;
    var bbb = null;
    
    console.log(typeof(bool+""));  // string
    console.log(typeof(num+""));   // string
    console.log(typeof(aaa+""));   // string
    console.log((aaa+""));         // undefined
    console.log(typeof(bbb+""));   // string
    

    8.2、其他类型转换成 Number

    此转换容易产生 NaN,一旦被转换的变量中含有非数字字符,都容易出现 NaN.

    1. 变量 -*/ 一个数字(有非数字字符会出现 NaN)

    var num1 = "11" - 0; 
    var num2 = "11" * 1;
    var num  = "11" / 1;
    

    2. Number(变量);(有非数字字符会出现NaN)

    Number("11");
    Number(""); // 空字符串返回 0
    

    3. parseInt() 和 parseFloat()(译为取整和取浮点数)

    空字符串:parseInt("") 和 parseFloat("") 返回 NaN。

    parseInt(变量):如果变量中首字符为字母则结果为 NaN。否则取出现首个非数字前的整数。 123 = parseInt(“123.123aaaa”);

    parseFloat(变量):如果变量中首字符为字母则结果为 NaN。否则取出现首个非数字前的浮点数。(如果没有小数的话取整) 123.123 = parseFloat(“123.123aaaa”);

    PS:

    true 数值为 1;false 为0;
    null 的数值类型为 0;
    undefined 无数值类型或者为 NaN。

    8.3、其他类型转换成 Boolean

    任何数据类型都可以转换成 boolean 类型,所以和以上两个转换不同。将任意类型作为参数传入 Boolean(参数) 中,都可以转换成布尔值。

    下面类型为 true:true、除0数字、"something"、Object(任何对象)
    下面类型为 false:false、0 、""(空字符串)、undefined 、null、NaN

    Boolean(参数); 
    

  • 相关阅读:
    Ueditor使用以及遇到的问题
    自己写一个分页PageHelper
    C#_IO操作_查询指定文件夹下的每个子文件夹占空间的大小
    C#发邮件_EmailHelper
    位运算反(~)与(&)异或(^)或(|)右移(>>)左移(<<)
    shell命令快捷键
    Openstack Day1简介及虚拟环境搭建
    VirtualBox双网卡搭建Linux虚拟实验环境
    git 学习笔记
    python socket 网络编程
  • 原文地址:https://www.cnblogs.com/lvonve/p/9141588.html
Copyright © 2020-2023  润新知