/**
* 为什么需要变量?
* 程序或者说脚本的目的就是按照我们的想法进行一系列的逻辑和计算
* 以达到我们偷懒的目的
* 很多情况下,逻辑和过程是不变的,只是一些量需要改变
* 比如我们买菜的计价过程
* 菜的计价方式和单价一定,总价就取决于数量了
* 如果用程序偷懒,我们只需要将数量设为变量,就能用同样的过程计算出菜价
* 和数学的函数一个意思!
*/
//没有变量的程序世界
//计算买5个白菜(单价2块)的总价并打印出来
console.log(5 * 2)
//计算买10个白菜
console.log(10 * 2)
//有100个人前来买白菜,分别要1 2 3 ... 100斤的。。。
//好在我们有变量
let num = 1
console.log(num * 2)
//第一个完事了,现在来第二个
num = 2
console.log(num * 2)
//...一天过去了
num = 100
console.log(num * 2)
//笑死,根本不省力
//所以,懒人第二件出来了 循环!
let num1 = 1
//当num1不大于100的时候就干花括号里的事情,没干完一次再判断一下
while(num1 <= 100) {
console.log(num1 * 2)
num1++ // num1++ 和 num1 = num1 + 1 以及num1 += 1 一个意思,就是自增1
}
//循环的另一种写法,其实还有一种do while 用的少先不讲
for(let num2 = 1; num2 <= 100; num2++) {
console.log(num2 * 2)
}
//有了变量和循环,再也不用写很多重复的代码了!
/**
* 上面我们声明了num num1 num2三个变量,他们是数值类型的(js里int float都为数值类型也就是number)
* 反正能进行数学计算也就是我们平时认知里的数字就叫数值类型number
* 他们可以进行一些数学运算
**/
console.log("----------分割线--------------")
let num3 = 3
let num4 = 4
console.log(num3 + num4)
//那假如是字符串呢
let str1 = "hello "
let str2 = "world"
console.log(str1 + str2)
//!居然拼接了,字符串之间也是可以用+运算符的,它表示拼接
//如果的不小心将一个字符串和数值相加
console.log(str1 + num3)
//并不会报错,而是将数值当做字符串进行了拼接!
//如果有这个字符串,虽然看着是数字,但引号的都是字符串哦
let str3 = "3"
//不小心又将字符串和数值相加
console.log(str3 + num3)
//是33而不是6哦,原理和上面一样
/**
* 数据类型
*/
//数值类型 number
let a = 1 //正数声明
let b = -1 //负数声明
let c = .1 //或者0.1 小数
console.log(a + b) //输出0
//字符串 三种声明方式 引号 单引号 波浪号(这种声明方式一般用于变量输出)
let s1 = "hello"
let s2 = 'hello'
let s3 = `hello`
console.log(s1 + a) //输出hello1
//布尔值 boolean 只有两个值true false
let b1 = true
let b2 = false
//undefined 和 null 这两种类型都只有一个值就是他们本身
let a11 = undefined
let a12 = null
let a13 //像这样只声明变量不赋值默认值就为undefined
console.log(a11 === a13) //true
//基本类型就这五种,其实还有一种symbol用得少先不讲
//还有一种数据类型就是引用类型了!(C的指针怕不怕)
//下一章见
console