javascript学习2、输入输出、变量、流程控制、循环

一.javascript引用到html

两种方式:

方式一:type="text/javascript"可以省略
<head> <meta charset='utf8'> <title></title> <script src='common.js'></script> </head>
方式二:type="text/javascript"可以省略 <body> <script> Js代码内容..... </script> </body>

 

二.语法规则

学习程序,是有规律可循的,就是程序是有相同的部分,这些部分就是一种规定,不能更改,我们成为:语法。

(1)JavaScript对换行、缩进、空格不敏感。

      备注:每一条语句末尾要加上分号,虽然分号不是必须加的,但是为了程序今后要压缩,如果不加分号,压缩之后将不能运行。

(2)所有的符号,都是英语的。比如括号、引号、分号。

(3)JavaScript的注释:

  单行注释:

// 我是注释

  多行注释: 

/*
    多行注释1
    多行注释2
*/

备注:sublime中,单行注释的快捷键是ctrl+/,多行注释的快捷键是ctrl+shift+/

三.JavaScript在网页中输入输出信息的写法

弹出警告框:alert("")

控制台输出:console.log("")

console.log("")表示在控制台中输出。console表示“控制台”,log表示“输出”。

控制台在Chrome浏览器的F12中。控制台是工程师、程序员调试程序的地方。程序员经常使用这条语句输出一些东西,来测试程序是否正确。

 

用户输入:prompt()语句

prompt()就是专门用来弹出能够让用户输入的对话框。

代码如下:

<script type="text/javascript">
        var a = prompt('今天是什么天气?');
        console.log(a);
</script>

上方代码中,用户输入的内容,将被传递到变量 a 里面。

效果如下:

f12打开控制台查看结果。

prompt()语句中,用户不管输入什么内容,都是字符串。

alert和prompt的区别:

alert("从前有座山");                //直接使用,不需要变量
var a = prompt("请输入一个数字");   // 必须用一个变量,来接收用户输入的值

四.直接量与变量

1.直接量:数字和字符串

“直接量”即常量,也称为“字面量”。看见什么,它就是什么。

简单的直接量有2种:数字、字符串。

(1)数值的直接量的表达非常简单,写上去就行了,不需要任何的符号。例如:

alert(886);  //886是数字,所以不需要加引号。

(2)字符串也很简单,但一定要加上引号。可以是单词、句子等。

2.变量

(1)变量的定义和赋值

var a = 100;

var是英语“variant”变量的缩写。后面要加一个空格,空格后面的东西就是“变量名”,

  • 定义变量:var就是一个关键字,用来定义变量。所谓关键字,就是有特殊功能的小词语。关键字后面一定要有空格隔开。

  • 变量的赋值:等号表示赋值,将等号右边的值,赋给左边的变量。

  • 变量名:我们可以给变量任意的取名字。

 PS:在JavaScript中,永远都是用var来定义变量,这和C、Java等语言不同(有兴趣的同学可以看一下es6)

变量要先定义,才能使用。比如,我们不设置变量,直接输出:

<script type="text/javascript">
    console.log(a);
</script>

控制台将会报错:

正确写法:

var a;   // 定义
a = 100;  //赋值
console.log(a);  //输出100

有经验的程序员,会把定义和赋值写在一起:

var a = 100;    //定义,并且赋值100
console.log(a);  //输出100

(2)变量的命名规范

变量名有命名规范:只能由英语字母、数字、下划线、美元符号$构成,且不能以数字开头,并且不能是JavaScript保留字。

下列的单词,叫做保留字,就是说不允许当做变量名,不用记:

abstract、boolean、byte、char、class、const、debugger、double、enum、export、extends、final、float、goto
implements、import、int、interface、long、native、package、private、protected、public、short、static、super、synchronized、throws、transient、volatile

大写字母是可以使用的,并且大小写敏感。也就是说A和a是两个变量。

var A = 250;    //变量1
var a = 888;    //变量2

(3)变量的类型

变量里面能够存储数字、字符串等。变量会自动的根据存储内容的类型不同,来决定自己的类型。

数值型:number

 如果一个变量中,存放了数字,那么这个变量就是数值型的

var a = 100;            //定义了一个变量a,并且赋值100
console.log(typeof a);  //输出a变量的类型

typeof()表示“获取变量的类型”,语法为:

typeof(变量)

在JavaScript中,只要是数,就是数值型(number)的。无论整浮、浮点数(即小数)、无论大小、无论正负,都是number类型的。

字符串型:string

var a = "abcde";
var b = "路飞";
var c = "123123";
var d = "哈哈哈哈哈";
var e = "";     //空字符串

console.log(typeof a);
console.log(typeof b);
console.log(typeof c);
console.log(typeof d);
console.log(typeof e);

(4)连字符和加号的区别

键盘上的+可能是连字符,也可能是数字的加号。如下:

console.log("我" + "爱" + "你");   //连字符,把三个独立的汉字,连接在一起了
console.log("我+爱+你");           //原样输出
console.log(1+2+3);               //输出6

总结:如果加号两边都是数值,此时是加。否则,就是连字符(用来连接字符串)。

 (5)变量值的传递(赋值)

语句:

a = b;

把b的值赋给a,b不变。

将等号右边的值,赋给左边的变量;等号右边的变量,值不变。

举个特殊的例子:

var a = "3";
var b = 2;
console.log(a-b);

效果:(注意,字符串 - 数值 = 数值)

 (6)变量格式转换

用户的输入

我们在上面的内容里讲过,prompt()就是专门用来弹出能够让用户输入的对话框。重要的是:用户不管输入什么,都是字符串。

parseInt():字符串转数字

parseInt()可以将字符串转数字。parse表示“转换”,Int表示“整数”(注意Int的拼写)。例如:

字符串转数字的方法:

parseInt(“5”);

parseInt()还具有以下特性

(1)带有自动净化的功能;只保留字符串最开头的数字,后面的中文自动消失。例如:

console.log(parseInt("2018你真帅!!"));

(2)自动带有截断小数的功能:取整,不四舍五入

var a = parseInt(5.8) + parseInt(4.7);
console.log(a);

var a = parseInt(5.8 + 4.7);
console.log(a);

 五.流程控制与循环

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停止
    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; //更新循环条件
}

练习:将1-100所有是2的倍数在控制台中打印。使用while循环

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)
 }

//方式二:
var names = ["alex", "tony", "rain"];
for(var index in names){
    console.log(index);
    console.log(names[index]);
}

课堂练习:

for(var i = 1;i<=100;i++){
    if(i%2==0){
        //是偶数
        console.log(i)
    }
}

1-100之间所有数之和

var sum = 0;
for(var j = 1;j<=100;j++){
    sum = sum+j
}
console.log(sum)

双重for循环

for(var i=1;i<=3;i++){       
   for(var j=0;j<6;j++){
        document.write('*')
    }
   document.write('<br>')
 }

小作业:

1.在浏览器中输出直角三角形

*  
** 
***
****
*****
******

代码:

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

2.在浏览器中输出

     *  
    ***  
   ***** 
  ******* 
 ********* 
*********** 

代码:

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 @ 2019-06-04 15:21  Python自动化运维之路  阅读(340)  评论(0编辑  收藏  举报