03-数据类型, 04-运算符 05-数据类型转换 06-流程控制

数据类型包括: 基本数据类型和引用数据类型

基本数据类型指的是简单的数据段,引用数据类型指的是多个值构成的对象

当我们把变量赋值给一个变量时,解析器首先要确认的就是这个值是基本类型还是引用类型值

 

1,基本数据类型

number

var a= 123;
//type 检查当前变量时什么数据类型
console.log(typeof a);
//特殊情况
var al = 5/0;
console.log(typeof al); //infinity 无限大,number类型

string

var str = "123";
console.log(typeof str)

boolean

var bl = false;
console.log(typeof bl); 

null

var cl = null;
console.log(al);

undefinded

var dl;
console.log(type dl);

2,引用数据类型

Function

Object

Array

String

Date

 

04-运算符

js中的运算符跟python中的运算符有点类似,但也有不同,所谓运算,在数学上,是一种行为,通过已知量的可能的组合,获得新的量

1,赋值运算符

以var x = 12, y = 5来演示示例

 

2,算数运算符

var a = 5, b = 2

 

3,比较运算符

var x = 5;

4, 特殊情况

字符串拼接+字符串运算 特殊情况.python中有拼接字符串中更简便的办法,其实在js中也有,大家可以八度搜索引擎搜索es6模板字符串

var  firstName  = '小';
var lastName = '马哥';
var name = '伊拉克';
var am = '美军';
// 字符串拼接
var str = "2003年3月20日,"+name+"战争爆发,以美军为主的联合部队仅用20多天就击溃了萨达姆的军队。这是继十多年前的海湾战争后,"+am+"又一次取得的大规模压倒性军事胜利。"
var fullStr = str;
console.log(fullStr)

var fullName = firstName +" "+ lastName;
console.log(fullName)
//不能对字符串进行+运算 只能拼接
var a1 = "1";
var a2 = "2";
console.log(a1-a2);
var b1 = "one";
var b2 = "two";

//NAN ==== not a number 是number类型
conslole.log(typeof(b1*b2));

 

05-数据类型转换

语言中我们的数据类型有很多,在某个页面中展示的数据类型也不用,比如说电话号码我们就要求number的类型,而输入姓名的时候就要求string类型的,那么在适当的情况下我们可以将数据类型进行转换.

1,将数值类型转换成字符串类型

隐式转换

var n1 = 123;
var n2 = "123";
var n3 = n1 + n2;
console.log(typeof n3)

强制类型转换

//强制类型转换string(), toString()
var str1 = String(n1);
console.log(typeof str1);

var num = 234;
console.log(num.toString())

2,将字符串类型转换成数值类型

var stringNum = "123345jsdflsj";
var num2 = Number(stringNum);
console.log(num2);
console.log(parseInt(stringNum));
console.log(parseInt(stringNum));

3,任意数据类型都可以转换为boolean类型

var b1 = '123';
var b2 = 0;
var b3 = -123

var b4 = Infinity; 
var b5 = NaN;

var b6; //undefined
var b7 = null;

// 非0既真
console.log(Boolean(b7))

 

06-流程控制

1, if, if-else, if else if-else

var ji  = 20;
if(ji >= 20){
    console.log('恭喜你,吃鸡成功,大吉大利')
}
alert('alex');//下面的代码还会执行
var ji  = 20;
if(ji>=20){
    console.log('恭喜你,吃鸡成功,大吉大利')
}else{
    console.log('很遗憾 下次继续努力')
if (true) {
   //执行操作
}else if(true){
    //满足条件执行            
}else if(true){
   //满足条件执行        
}else{
  //满足条件执行
}
注意: 浏览器解析代码的顺序 是从上往下执行,从左往右

2,逻辑与&&, 逻辑或||

//1.模拟  如果总分 >400 并且数学成绩 >89分 被清华大学录入
//逻辑与&& 两个条件都成立的时候 才成立
if(sum>400 && math>90){
    console.log('清华大学录入成功')
}else{
    alert('高考失利')
}
//2.模拟 如果总分>400 或者你英语大于85 被复旦大学录入
//逻辑或  只有有一个条件成立的时候 才成立
if(sum>500 || english>85){
    alert('被复旦大学录入')
}else{
    alert('高考又失利了')
}

3,switch

var gameScore = 'better';

switch(gameScore){

//case表示一个条件 满足这个条件就会走进来 遇到break跳出。break终止循环。如果某个条件中不写 break,那么直到该程序遇到下一个break停止
    case 'good':
    console.log('玩的很好')
    //break表示退出
    break;
    case  'better':
    console.log('玩的老牛逼了')
    break;
    case 'best':
    console.log('恭喜你 吃鸡成功')
    break;

    default:
    console.log('很遗憾')

}

4,while循环

循环三步走:

1,初始化循环变量

2,判断循环条件

3,更新循环变量

var i = 1; //初始化循环变量

while(i<=9){ //判断循环条件
    console.log(i);
    i = i+1; //更新循环条件
}

 

5,do_while

//不管有没有满足while中的条件do里面的代码都会走一次
var i = 3; //初始化循环变量
do{
    console.log(i);
    i++;
}while(i<10) // 判断循环条件

 

6.for循环

for(var i = 1; i <= 10; i++){
    console.log(i)
}

小作业:

输出三角形

for(var i = 1; i <= 6; i++){
            for(var s=i; s < 6;s++){
                document.write("&nbsp")
            }

            for(var j = 1; j <= 2*i-1; j++){
                document.write("*");
            }
            document.write("<br>")
        }

 

posted @ 2018-08-14 18:42  猴里吧唧  阅读(135)  评论(0)    收藏  举报