我的js学习(js变量、基本数据类型、运算符)

学习js第一天

JavaScript简介

JavaScript是一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。

JavaScript编写位置

1.行内(不用)
2.script标签内,写在head标签或body标签最后
3.外部js文件中,使用script标签引入

注意在引入js文件的script标签之间不能编写js代码

注释

单行注释://
多行注释:/* */

变量

简介

变量是JS中的一个容器。用来装载一些数据。

特点: 每当有代码使用到这个变量,就会使用这个变量容器中的数据。

定义
  • 语法:
    • var 变量名 = 变量值;
  • demo:
    var a = 10;
  • 含义:
    • 在内存中开辟了一个空间
    • 空间的名字叫做a
    • 在空间中存放了数据 10.
名称定义规范
  • 整体由 数字、 字母、 下划线(_)、 美元符号($) 组成
  • 不可以以数字开头
  • 不可以使用关键字、保留字作为变量名称
  • JS变量名称严格区分大小写(对大小写敏感)
  • 推荐使用驼峰命名法
变量特点
  • 变量在被使用的时候是不可以加双引号的
  • 变量在被使用的时候使用的是所保存的值
  • 变量只可以保存一个值
  • 等号(=)不是比较的意思 是 赋值 的意思 把等号右边的数据或者计算结果 赋值 给等号左边
  • 左边通常是变量

错误示范: 1 = 1;

数据类型

数据类型指的是一门语言中对不同数据的划分。

  • JS中的数据类型一共有6种。分为两大类:
    • 基本类型
    • 引用类型
基本数据类型

string(字符串)、number(数字)、boolean(布尔值)、undefined、null

引用类型

object

字符串

  • 定义
    • 使用单引号、双引号作为字符串的开启和结束标记

注: 不可以使用一个单引号加一个双引号 或者 一个双引号加一个单引号去定义字符串。这是不合法的

  • 转义字符
    • 问题: 如何在一个字符串中出现单引号或者双引号
      • 转义 在字符串中的单引号或者双引号之前 使用 \
      • 嵌套 如果想要在字符串中出现单引号,那就使用双引号去定义字符串 反之亦然

数字

  • 进制
    • 十进制: 10、 123、 123.333等,逢10进1。
    • 八进制: 077、 012

    注: 以0开头 不可以出现8和8以上的数字, 逢8进1。

    • 二进制: 0b1010101001

    注: 以0b开头 不可以出现2和2以上的数字, 逢2进1。

    • 十六进制: 0xfff

    注: 以0x开头 单个位数的最大值为f, 逢16进1。

    • 特殊的数字:
      • NaN(not a number) 表示不是一个数
      • Infinity 表示无穷大

布尔值

布尔数据类型只有两个值: true false

undefined(特殊类型)

只有一个值undefined

null(特殊类型)

只有一个值null

判定数据类型

方式1: typeof
方式2: typeof(值)

数据类型转化

数字转化为字符串
	<script>
        // 定义一个数字
        var num = 10;
        
        // 1 String()
        var str = String(num);
        console.log(str, num)

        // 2 toString()
        var str1 = num.toString();
        console.log(str1, num);

        // 3 toFixed()
        var str2 = num.toFixed(0);
        console.log(str2, num);
        
        // 4 + ""
        var str3 = num + "";
        console.log(str3, num);

        // + 在JS中,有两个含义 一个是字符串的拼接符号 连字符 另一个是数学的运算符 
        // 如果 + 两边有任何一个是字符串 那么它就会被当作字符串的拼接符号
        
    </script>
字符串转化为数字
	<script>
        // NaN
        // 数字一定能够转成字符串 但是字符串不一定能够转为数字 所以就要有一个非数字的数字结果 就是NaN
        var str = "10";
        var str1 = "10F";
        var str2 = "F%……&*";
        var str3 = "10.5.5.5";

        // +字符串 只能够转换那些能够全部转为数字的字符串
        // console.log(+str)
        // console.log(+str1) 
        // console.log(+str2)
        // console.log(+str3)

        // Number(字符串) 只能够转换那些能够全部转为数字的字符串
        // console.log(Number(str))
        // console.log(Number(str1))
        // console.log(Number(str2))
        // console.log(Number(str3))

        // parseInt(字符串) 能转几个是几个
        // 该函数会从第一个字符开始解析 如果能够转为数字 那么会转为数字,如果不能够转为数字,那么停止。
        // 如果第一个就是非数字 那么NaN
        // console.log(parseInt(str))
        // console.log(parseInt(str1))
        // console.log(parseInt(str2))
        // console.log(parseInt(str3))


        // parseFloat(字符串) 比parseInt多识别一个小数点
        console.log(parseFloat(str))
        console.log(parseFloat(str1))
        console.log(parseFloat(str2))
        console.log(parseFloat(str3))

    </script>
所有数据类型转化为布尔值
	<script>
        // 在JS中 只有 "" 0 NaN undefined null 转为布尔值之后是false 
        console.log(Boolean(0))
        console.log(Boolean(""))
        console.log(Boolean(NaN))
        console.log(Boolean(undefined))
        console.log(Boolean(null))
    </script>

运算符

数字运算符
  • 加法运算 +
    • 含义1: 连字符
      在表达式中任意一侧是字符串时,就会当作连字符处理
    • 含义2: 数学中的加法
  • 减法运算 -
    • 含义: 数学中的减法
  • 乘法运算 *
    • 含义: 数学中的乘法
  • 除法运算 /
    • 含义: 数学中的除法
  • 模(求余)运算 %
    • 含义: 数学中的求模
  • 简写形式:
    a += 10;
    a = a + 10;
    
    a -= 10;
    a = a - 10;

    a *= 10;
    a = a * 10;

    a /= 10;
    a = a / 10;

    a %= 10;
    a = a % 10;
关系运算符

关系运算符只会返回布尔值

  • > 大于
    console.log(1 > 2); // false
    console.log(2 > 1); // true
  • >= 大于等于
    console.log(2 >= 2); // true
    console.log(1 >= 2); // false
  • < 小于
    console.log(1 < 2); // true
    console.log(2 < 1); // false
  • <= 小于等于
    console.log(1 <= 2); // true
    console.log(2 <= 1); // false
  • == 相等(只比较值 不比较数据类型)
    console.log(1 == 1); // true
    console.log(1 == '1'); // true 数字1和字符串1比较结果为真
  • === 全等(既比较值 也比较数据类型)
    console.log(1 === 1); // true
    console.log(1 === '1'); // false
  • != 不相等(只比较值 不比较数据类型)
    console.log(1 != 1); // false
    console.log(1 != '1'); // false
  • !== 不全等(既比较值 也比较数据类型)
    console.log(1 !== 1); // false
    console.log(1 !== '1'); // true
逻辑运算符
  • && 逻辑与
    true && true  // true
    true && false // false
  • || 逻辑或
    false || false // false
    false || true // true
    true || true // true
  • ! 逻辑非
    !true // false
    !false // true

总结 && 有假就假 都真才真 || 有真就真 都假才假
只能够写在某一个变量或者值的左侧 会对它进行取反操作 最终结果为true或者false

自增自减
  • ++ 自增运算符

    含义: 让一个变量保存的数 +1 再赋予变量自身

  • -- 自减运算符

    含义: 或者 -1 再赋予变量自身

  • 出现位置: 变量前后

    • 如果出现在前面: ++变量
    • 变量的使用前会先+1 再参与运算
    • 如果出现在后面: 变量++
    • 变量的使用会先参与运算, 再+1
    var a = 10; 
    var b = a-- + --a;
    console.log(b); // 18
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值