JS-01-1

158 阅读4分钟

一 输入方式

prompt(`请输入用户名`)

confirm (`请选择`)

二 输出方式
1. alert     (给用户看)

2.console.log  (控制台)

3.document.write (body显示)
三 基本数据类型
1. 字符串 
    console log( ``)
    分单引,双引,反引(常用)
    
 2 . 数值
     console log (123)
     
     不加引号,直接给数字
     
 3. 布尔类型 
     boolean
     ture(成立) . fasle(不成立)
     
  4. 空类型
      null 
   
  5. 未定义
      undefined
      console.log(undefind)
      
   6. 获取数据类型名
       
       console.log(typeof(10))  //`number`
       console.log(typeof(`hello`))  //`string`
       console.log(typeof(true))  //`boolean`
       console.log(typeof(null))  //`object`
       
    7. 对于prompt()
       
       浏览者只要点击 确认 接受到的就是 string类型
       浏览者只要点击 取消 接受到的就是 null类型
       
       console.log(confirm(`请选择`))
     
四 数据初体验
    1.数组
    一组数据的有序集合
                0   1  2  3
    consol.log [10,20,30,40]
    也可以是
     consol.log [`abc`,`syz`,`zhangsan`,150]
      
五 变量
      1. 什么变量
      变量是容器, 内存中用于存储数据的一个空间叫变量,这个空间为了使用所有一个名字
      
      2. 定义
               (声明)  (赋值)
      语法: let 变量名 = 数据
            let 变量名 在内存中申请一个空间,并为之命名.
      let x = 10
      let y = `hello`
      let v = true
      let f = false
      
      let m = [`zhangsan`, `lisi`, `wangwu `]
      
      console.log(x)
      console.log(y)
      console.log(v)
      console.log(m)
      
      3. 变量的命名规则
      
      (1) 强制约束
      
      (2) 人为约束 
          多个单词用小驼峰: 每个单词首字母大写,除了第一个单词.
      
      4. 变量的注意事项
      let a  //没有内容
      console.log(a)  //undefined (未定义)
      
     注意: 没有赋值的内容,会显示undefined
     
     小案例:
     需求1: 弹出一个输入框,让用户输入名字
     需求2: 弹出一个输入框,让用户输入名字
     需求3: 在页面打印,用户输入名字和年龄
     需求4: 弹出一个确认框,让用户选择确定还是取消
     
     输入
     let userName = prompt (`请输入姓名`)
     let age =prompt (`请输入年龄`)
     
     console.log(userName)
     console.log(age)
     
     弹出一个确认框
     let ret = confirm (`请选择`)
     console.log(ret)
     
    * 5.交换两个变量里的值(重要)
     
     let a = 10
     let b = 20
     console.log = (a,b)
     显示 10 和 20
     
     let c = a
         a = b
         b = c 
     console.log = (a,b)
     显示 20 和 10 
     *
     
      6. 数组的基本操作
                 0  1  2  3
      let arr = [10,49,16,20]
      
      查看所有的元素
      console.log(arr)

       (1) 查看其中一个数组
       conlse.log(arr[0])
       conlse.log(arr[3])
       
       如果下表不存在则返回undefined
       conlse.log(arr[10])
       
       (2) 添加元素
       语法:数组名[下标] = 数据
       arr[4]=100
       console.log(arr)
       
       (3) 获取数组的长度
       语法:数组名.length
       consolo.log(arr,length)
       
       小节:
       数组元素的访问 数组名[下标]
       添加元素       数组名[下标]=数据
       数组长度       数组名.length


7. 常量 const
常量不允许修改,是一种特殊的变量.

语法:const 常量名 = 数据

const常量名 = 数据

const a = 10
console.log (a)
consple.log(a + 100)

a = 20 常量里面的值不允许修改,否则报错

const b 常量定义时必须赋值,否则报错

六 运算符

1.赋值运算符

2.算术运算符
 + - *
 % 求余运算符
 求两个数相除的余数
 console.log(5 % 3)
 主要用于判断一个数是不是另一个的整数倍
 
 可以用于判断奇偶数,如果x % 结果是0 表示偶数
 console.log(9 % 3)
 
 3. ++自增
    -- 自减
    let a =20
    a++  // 等效于a = a+1
    console.log(b)
 
            b  // 等效于b= b-1
    console.log(b)
    
    小结:
    % 余两个数相除的余数
    ++ 自增1运算符
    -- 自减1运算符
 
   4.连接运算符
       
     debugger  //进行调试模式
    let str = `<table border="1" rules ="all" width = "500" height = "300" >`
        str +=`<tr>`
        str +=`<td></td>`
        str +=`<td></td>`
        str +=`<td></td>`
        str +=`<td></td>`
        str +=`<tr>`
        str += `</table>`

        document.write(str)

       
七 数据类型转换
1. 隐性转换

首先要明确,只要相同的数据才可以直接进行运算,如果数据类型不相同,会发生数据类型的转换.

       
 2. 显性转换
 Number (数据)可以讲其他数据类型转换为number类型
 String(数据) 可以讲其他数据类型转换为string类型
 
 console.log(Number(`20`))
 console.log(10*Number(`20`)) // 200
 
 console.log(String(10))
 console.log(String(10) + '20') // '1020'
 
 // console.log(2-'2')  // 0 
 
 3. 小案例
    let inventory =100
    
    let num = Number (prompt(`请输入本月的入库数`)) // 20
    let num = prompt (`请输入本月的入库数`))
    let num = +prompt (`请输入本月的入库数`))*1
    
    let total = inventory + num
    console.log(total)
    
    小结:
    如果数据类型不相同,会发生数据类型转换
    隐式: 绝大多数隐式转换都是正确的.
    显示: 在进行 + 与 += 时.如果有一个是字符串,要搞清楚是进行数学的加还是字符中的拼接
    
    4. 数值取值
       parseInt(字符串)
       在一个字符串中,从左向右依次提取整数,知道遇到第1非数字停止提取.
       
       console.log(parseInt(`10`)) //10
       console.log(parseInt(`10元`)) //10
       console.log(parseInt(`rmb10)) //NaN
       
       parseFloat (字符串)
       在一个字符串中,从左向右依次提取小数,直到遇到第1个非数字停止提取.
       
       let num = 100
       let price = parseFloat(prompt(`请输入价格))
       let money = num * price
       console.log(money)
       
       
       小结: Number() 字符串内全都是数字 `20`  `15.3`
       parseInt() 与 parseFolat() 字符后面是非数字 `20元` `15.3元`
       
八 模板字符串
    1.使用反引号定义的字符串也称之模板字符串.
      模板字符中的特点:
      可以换行定义字符串
      可解析变量的值 $(变量名