12.19-21练习

55 阅读3分钟

数据类型检测

语法 typeof x

    var str1 = '100'
    var str2 = 100
    var str3
    var star4 = true
    var star5 = null//object
    console.log(typeof (null));//判断数据类型 

js组成

<!-- 1.行内式 不推荐 -->
<button onclick="alert('你好')">按钮</button>
<!--2.内嵌式 
学习阶段推荐
一般写在body标签尾部-->
<script>
//js组成
//es Bom Dom
//es:基础js语法
//Bom基于浏览器对象进行操作
//Dom基于文本文档类型进行操作
</script>


<!-- 3.外联式
目前公司都是外联式 因为公司代码量肯定比较大 -->
<script src="./01.html "></script>

变量

变量是计算机中存储数据的一个标识符号,通过这个标识符可以找到内存中的存储的数据,使用变量的时候,用到是内部存储的数据.
变量赋值:变量名 =值

JS的数据类型转换

  // 1.转换位数字类型
    // 如果转换的字符串是纯数字组成的,那么直接转我换为数字
    // NAN:表示的是一个number的数字,但是灭有办法通过常规的数字表明 坏掉的数字
    console.log(typeof (Number('100')), Number('100'));//会将'100'转换位 数字,然后打印到控制台
    console.log(typeof (Number('')), Number(''));//0
    console.log(typeof (Number('abc')), Number('abc'));
    console.log(typeof (Number(false)), Number(false));//false0 true1
    console.log(typeof (Number(null)), Number(null));//0
    console.log(typeof (Number(undefined)), Number(undefined));//0
    console.log(typeof (parseInt('100abc')), parseInt('100abc'))//100
    console.log(typeof (parseInt('100abc')), parseInt('abc11'))//nan
    console.log(typeof (parseInt(' ')), parseInt(' '))//NAN
    console.log(typeof (parseInt(null)), parseInt(null))//NAN
    console.log(typeof (parseFloat('100.42332')), parseFloat('100.42332'));//不变
    console.log(typeof (parseFloat('100')), parseFloat('100'));//不变
 // String
    // var a = 100
    // var c = true
    // var d = undefined
    // // var b = String(a)
    // var b = String(true)
    // console.log(a, b);
    // console.log(typeof a, typeof b);
    // 2.toString()
    var a = 100
    // null undefined不能toString
    var b = a.toString()
    console.log(a, b);
    //3. +
    var c = 100
    var d = a + ""
    console.log(typeof d, d);
   // Boolean(变量)
    // 在js中,只有''、0、null、undefined、NaN,这些是false,其余都是true
    var a = 100
    var b = Boolean(a)
    console.log(a, b);
    var c = NaN
    var d = Boolean(c)
    console.log(c, d);

数字运算符

+ - * /

  • +只有符号两边都是数字的时候才会进行加法运算 只要符号任意一边是字符串类型,就会进行字符串拼接
  • -会执行减法运算 会自动把两边都转换成数字进行运算
  • *会执行乘法运算 会自动把两边都转成数字进行运算
  • /会执行除法运算 会自动把两边都转换成数字进行运算

赋值运算符

  // 赋值运算符
    var a = 1
    a = 2
    console.log(a);
    // += -= *= /= %=
    var number = 5
    //num=num+1
    number += 1
    console.log(number);

比较运算符

      // 比较运算符
    // 1.== 等于 数值
    // 2.=== 全等  数值+数据类型
    // 3.!= 不等 数值
    // 4. !== 不全等 数值+数据类型
    console.log('' === 0);

逻辑运算符

 // &&
    //   进行且的运算
    // 符号左边必须为true并且右边也是true, 才会返回true
    // true && true 结果是true
    // true && false 结果是false
    // false && false 结果是false
    // false && true 结果是false

    //||
    // 进行或的运算
    // 符号左边为true或者右边为true, 都会返回true

    //! 取反
    // !! 真/假
    var length = 0
    console.log(!length);
    console.log(length === 0);
    var x = '1123'
    console.log(!!x);
    //短路 && 后面为假没机会执行

    var z = ""
    document.write(z || "这个家伙很懒,什么都没有留下")

自增自减运算符

 ++number 先加再保存
 number++先保存再加
 --number 先减再保存
 number 先保存再减

三元运算符

  • a > b ? c : d
    // var age = 18
    // age >= 18 ? alert('已经成年') : alert('没有成年')

switch 条件分支语句

语法:switch(code){ case 1:.. break; case 2:.. break; case 3:.. break; }

if 条件分支语句

语法:if(条件){}else{}

while 循环语句

while(条件){}

do while 循环语句

do{}while(条件) 先执行一次循环