console.log(信息); // 这个是常用的输出打印信息的手段.<br>
> 前端开发程序员都喜欢用 [Chrome](./ChromeSetup.exe) 讨厌用 IE<br>
> 目前前端开发喜欢用的 IDE(编辑器)是 [VScode](./VScode.exe)<br>
> 测试用的html模板,在[这里](./index.html)<br>
# Lesson1 变量

## 变量的初始化
* var
> 在 ES5 (ES 表示ECMAScript ,是一个标准,可以参考百度) 之前,变量命名都是使用
var 的方式. var 表示为变量进行声明.
```javascript
var a = 0; // 数值
var b = 'nice'; // 字符串
var c = true; // true 和 false 为布尔值, 表示真或者假
var d = {}; // 对象
var x = null; // null 类型
var y = function() {alert(1);}; // 函数
// 如果变量在使用var 声明时,不赋值,那么,会被认为是 undefined.
var e;
console.log(e);
// undefined
```
* const, let  (新标准 ES5)
> 在 es5标准中,可以使用 const 和 let 来为变量进行声明,<br>
> 它们和var并没有什么太大的差异.<br>
> cosnt 声明的变量,表示,该变量的不再改变(地址不改变 _ 这个可以做了解)
> let 声明的变量,可以改变,也可以不改变.
```javascript
const f = 0;
f = 2; // 报错, 声明为const后,改变的变量
let g = 12; // ok
let h = 22; // ok
h = 24; // ok
```

> 变量在声明时,我们通常是使用小驼峰规范,<br>
> 即 第一个单词全部小写,其余单词,首字母大写.<br>
```javascript
var loadStatus = 'loading';
var userGetTimes = 2;
```

> 一行标准的赋值,会在赋值结尾加上分号 ;

## 变量的赋值

* = 
> 在变量声明的时候就,声明后给 = , 表示给变量赋值了.<br>

> 只要不是用const声明的变量,都可以为变量重新赋值.<br>

> 可以将任何类型赋给变量,不管这个变量之前是什么类型.<br>(高级语法中会有只读变量,但不常用,现在可以这么认为)<br>

> 在赋值为字符串的时候, 单引号和双引号并没有什么区别.
```javascript
// 示例
var a = 'nice';
var b = "nice";
console.log(a);
// "nice"
console.log(b);
// "nice"
```
> 字符串中的模板拼接.<br>
> 在日常拼接字符串的时候,如果字符串中带有单引号和双引号,会使得拼接起来非常麻烦,而且,可读性也很差. <br>
> 在 js 中,可以使用字符串模板进行拼接.
```javascript
// 示例
var name = 'jack';
var city = 'China';
var link = `"${name}" is from '${city}'`;
// `` 符号,是键盘上esc下方的那个按键,(英文状态)
// console.log(link);
// "jack" is from 'China'
// 这样写起来很容易,可读性也很好
```

## 变量的判断, > , < , ==
* 有时候我们需要去判断,这个变量的类型, 判断类型的操作符是 typeof
```JavaScript
typeof(a) // 我们会得到 6 种结果
// undefined 这个值未定义, 比如: var a; typeof(a)
// boolean 这是个布尔值
// string 这个值是字符串
// number 这个值是数值
// object 这个值是对象或者null (null 是一种和undefined类似的存在,都表示没有东西)
// function 这个值是函数 比如: function a() {console.log('Hello');}
```
* 数值大于小于的判断, 和数学中的大于小于类似, 判断的结果是一个布尔值,如果表达式是符合逻辑的,就会得到 true,反之,得到false
```javascript
var a = 10;
var b = 5;
console.log(a > b);
// true
console.log(a < b);
// false
```
* 在判断变量是否相等时, 可以使用 == 或者 ===
> 使用 == 时,会先判断类型是否一致,不一致会进行转换,再使用转换后的进行比较(不推荐)<br>
> 使用 === 时,会先判断类型,类型不一致,直接是 false<br>
```javascript
var a = ''; // 字符型
var b = 0; // 数值型
console.log(a==b);
// true
console.log(a===b);
// false
// 如果 a 和 b 都是 对象(Object), 则不能使用这种判断方法.
```

## 变量的操作
* \+ , -, *, / , % 操作符
------------------------
* \+ 操作,有2种意义, 一是数值的相加, 二是字符串的拼接.
```javascript
var a = 1;
var b = 2;
var c = a + b;
console.log(c);
// 3
// 注意,在使用+号进行数值相加时,相加后的值,如果要进行比较,请尽量使用整数.(这是因为js的精度产生的问题)
var x = 0.1;
var y = 0.2;
var v1 = x + y;
var v2 = (x * 10) + (y * 10);
console.log(v1);
// 0.30000000000000004
console.log(v2);
// 3
console.log(v1 === 0.3);
// false

// 字符串的拼接
var str1 = 'my name';
var str2 = ' is jack';
var str3 = str1 + str2;
console.log(str3);
// my name is jack
```
* \- 操作符,意义为数值的相减
```javascript
var a = 3 - 2;
console.log(a);
// 1
```

* \* 操作符,意义为前后两值的乘积
```JavaScript
var a = 3 * 2;
console.log(a);
// 6
```

* \/ 操作符,意义为两数相除
```JavaScript
var a = 8 / 3;
console.log(a);
// 2.6666666666666665
```

* \% 操作符,意义为取两数相除后的余数.
```javascript
var a = 8 % 3;
console.log(a);
// 2
```
posted on 2019-05-24 13:51  小湾生产队队长  阅读(125)  评论(0编辑  收藏  举报