变量、数据类型、运算、流程控制

目录

 1. JavaScript介绍

1.1JavaScript是什么

1.1.1JavaScript的历史

1.1.2 JavaScript是什么语言

1.1.3 JavaScript的发展和意义

1.1.4 JavaScript和HTML、CSS的区别

1.1.5 JavaScript 的组成

1.2 JavaScript代码写法

1.3JavaScript问题总结

1.4 注释

2. JavaScript变量

2.1 变量引入

2.2 变量声明和初始化

2.3 变量的命名规则和规范 

2.4 字面量

3. JavaScript 数据类型

3.1 基本数据类型

3.1.1 Number 类型

3.1.2 String 类型

3.1.3 Boolean 类型

3.1.4 Undefined 和Null

3.2 复杂数据类型

3.3  数据类型转换

4. JavaScript 运算

4.1 算术运算符

4.2 一元运算符

4.3 逻辑运算符(布尔运算符)

4.4 关系运算符(比较运算符)

4.5 赋值运算符

4.6 运算符的优先级

5. 流程控制

5.1 流程控制介绍

5.2 分支语句

5.2.1 if语句

示例 : if案例判断一个人的年龄是否满18岁(是否成年)

5.2.2 三元运算符

5.2.3 switch 语句 

5.2.4 分支结构总结

 5.3 循环结构

5.3.1 while 语句

5.3.2 do...while 语句

5.3.3 for 语句

5.3.4 continue 和 break

5.3.5 循环语句区别

5.4 调试


 

课程大纲  

 

 

JavaScript整体结构图

 1. JavaScript介绍

1.1JavaScript是什么

1.1.1JavaScript的历史

        Netscape(网景)在最初将其脚本语言命名为LiveScript,是布兰登.艾克发明的。后来Netscape在与Sun合作之后将其改名为JavaScript。JavaScript最初受Java启发而开始设计的,目的之一就是“看上去像Java”,因此语法上有类似之处,一些名称和命名规范也借自Java。JavaScript与Java名称上的近似,是当时Netscape为了营销考虑与Sun微系统达成协议的结果。Java和JavaScript的关系就像张雨和张雨生的关系,只是名字很像。

1.1.2 JavaScript是什么语言

        可以说:Java 服务器端的编程语言,JavaScript运行在客户端(浏览器)的编程语言

        JavaScript(简称JS)是一种运行在客户端的脚本语言,JavaScript的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。

        也可以说,是一门脚本语言、是一门解释性语言、是一门动态类型的语言、是一门基于

对象的语言。(不是面向对象)、是一门弱性语言

1.1.3 JavaScript的发展和意义

        最初的目的是为了处理表单的验证操作。JavaScript 发展到现在几乎无所不能,例如:做网页特效、与交互(表单的提交),比如:轮播图、tab切换、返回顶部。。。

        例如:网页特效、服务端开发(Node.js)、命令行工具(Node.js)、桌面程序(Electron)、App(Cordova)、控制硬件-物联网(Ruff)、游戏开发(cocos2d-js)

1.1.4 JavaScript和HTML、CSS的区别

HTML - 提供网页的结构,提供网页中的内容

CSS - 用来美化网页

JavaScript - 可以用来控制网页内容,给网页增加动态的效果

1.1.5 JavaScript 的组成

 

(1)ECMAScript - JavaScript的核心

        ECMA欧洲计算机制造联合会。JavaScript的核心,描述了语言的基本语法和数据类型,ECMAScript是一套标准,定义了一种语言的标准与具体实现无关。

(2)BOM - 浏览器对象模型

        一套操作浏览器功能的API。通过BOM可以操作浏览器窗口,比如:弹出框、控制浏览器跳转、获取分辨率等。Borswer object model   

(3)DOM - 文档对象模型

        一套操作页面元素的API。DOM可以把HTML看做是文档树,通过DOM提供的API可以对树上的节点进行操作。Document object model

1.2 JavaScript代码写法

CSS代码写法分为行内样式、嵌入样式(内部)、外部样式、控制台书写。那么,js的代码可以分四个地方写:

1.在html的文件中,script的标签中写js代码

2.js代码可以在html的标签中写

3.在js文件中可以写js代码,但是需要在html页面中引入script的标签中的src="js的路径"

4.还可以在控制台直接书写js代码

1.3JavaScript问题总结

1、在一对script的标签中有错误的js代码,那么该错误的代码后面的js代码不会执行

2、如果第一对的script标签中有错误,不会影响后面的script标签中的js代码执行

3、script的标签中可以写type="text/javascript"标准写法或者写language="JavaScript"都可以。但是,目前在我们的html页面中,type和language都可以省略,原因:html是遵循h5的标准。

4、有可能会出现这种情况:script标签中可能同时出现type和language的写法。

5、script标签在页面中可以出现多对。

6、script标签一般是放在body的标签的最后的,有的时候会在head标签中,目前讲课的时候都在body标签的后面(body中的最后)。

7、如果script标签是引入外部js文件的作用,那么这对标签中不要写任何的js代码,如果要写,重新写一对script标签,里面写代码。

1.4 注释

单行注释

用来描述下面一个或多行代码的作用

// 这是一个变量
var name = 'hm';

多行注释

用来注释多条代码

/*
var age = 18;
var name = 'zs';
console.log(name, age);
*/

2. JavaScript变量

2.1 变量引入

什么是变量

变量是计算机内存中存储数据的标识符,根据变量名称可以获取到内存中存储的数据

为什么要使用变量

使用变量可以方便的获取或者修改内存中的数据

2.2 变量声明和初始化

var声明变量

var age;

变量的赋值

var age;
age = 18;

同时声明多个变量

var age, name, sex;
age = 10;
name = 'zs';

变量在内存中的存储

var age = 18;

2.3 变量的命名规则和规范 

规则 - 必须遵守的,不遵守会报错

1、由字母、数字、下划线、$符号组成,不能以数字开头

2、不能是关键字和保留字,例如:for、while。

3、区分大小写

规范 - 建议遵守的,不遵守不会报错

1、变量名必须有意义

2、遵守驼峰命名法。首字母小写,后面单词的首字母需要大写。

下面哪些变量名不合法  zhanGao

a
1
age18
18age
name
$name
_sex
&sex

2.4 字面量

在源代码中一个固定值的表示法,也叫字面量。

数值字面量:8, 9, 10

字符串字面量:'程序员', "大前端"

布尔字面量:true,false

3. JavaScript 数据类型

3.1 基本数据类型

Number、String、Boolean、Undefined、Null

3.1.1 Number 类型

数值字面量:数值的固定值的表示法,例如110,1024,60.5

十进制
    var num = 9;//进行算数计算时,八进制和十六进制表示的数值最终都被转换成十进制数值。
       十六进制
    var num = 0xA;//数字序列范围:0~9以及A~F
       八进制
    var num1 = 07;   // 对应十进制的7
    var num2 = 011;  // 对应十进制的9
    var num3 = 021;   // 对应十进制的17  //数字序列范围:0~7

    如果字面值中的数值超出了范围,那么前导零将被忽略,后面的数值将被当作十进制数值解析

浮点数
    var n = 5e-5;   // 科学计数法  5乘以10的-5次方  
浮点数值的最高精度是17位小数,但在进行算术计算时其精确度远远不如整数
   var result = 0.1 + 0.2; // 结果不是0.3,而是:0.30000000000000004
   console.log(0.07 * 100);

注意:不要判断两个浮点数是否相等

就是说由于0.1转换成二进制时是无限循环的,所以在计算机中0.1只能存储成一个近似值

最小值:Number.MIN_VALUE,这个值为: 5e-324
       最大值:Number.MAX_VALUE,这个值为: 1.7976931348623157e+308
       无穷大:Infinity
       无穷小:-Infinity

数值判断

NaN:not a number (可以通过Number()方法判断)

NaN与任何值都不相等,包括他本身

isNaN(): is not a number (如果 x 是特殊的非数字值 NaN(或者能被转换为这样的值),返回的值就是 true。如果 x 是其他值,则返回 false)

3.1.2 String 类型

字符串可以使用单引号,也可以使用双引号,例如:'abc'、"abc"。

字符串字面量:‘I am Happy’、”Hello World”

转义符

 

字符串长度

length属性用来获取字符串的长度

var str = '美女 Hello World';
console.log(str.length);

字符串拼接

字符串拼接使用 + 连接

console.log(11 + 11);
console.log('hello' + ' world');
console.log('100' + '100');
console.log('11' + 11);
console.log('male:' + true);

        两边只要有一个是字符串,那么+就是字符串拼接功能

        两边如果都是数字,那么就是算术功能。

        语言具有隐式转换(隐式类型转换就是指,数据的类型在不用人工干预的情况下进行转换的行为,原因:js是一门弱类型(动态类型)的语言,他在声明变量的时候不需要指定类型,对变量赋值也没有类型的检测,所以js是非常的灵活的,)

3.1.3 Boolean 类型

Boolean字面量: true和false,区分大小写

计算机内部存储:true为1,false为0

3.1.4 Undefined 和Null

undefined表示一个声明了没有赋值的变量,变量只声明的时候值默认是undefined

null表示一个空,变量的值如果想为null,必须手动设置

var s = null;

3.2 复杂数据类型

Object

3.3  数据类型转换

获取变量的类型

typeof关键字

一个bug,null为什么是引用类型(复杂类型)?

在JS的最初版本中使用的是32位系统,为了性能考虑使用低位存储变量的类型信息,000开头的是对象,null是全0,所以将null误判为Object了,虽然现在的内部类型判断代码已经改变了,但bug永久的遗留下来了

var age = 18;
console.log(typeof age);  // 'number'

toString()

转换成字符串类型 

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

String()

String()函数存在的意义:有些值没有toString(),这个时候可以使用String()。比如:undefined和null

拼接字符串方式

num + "",当 + 两边一个操作符是字符串类型,一个操作符是其它类型的时候,会先把其它类型转换成字符串再进行字符串拼接,返回字符串

转换成数值类型

Number()可以把任意值转换成数值,如果要转换的字符串中有一个不是数值的字符,返回NaN

 Number()转化规则

     a. 如果字符串中只包含数字时,将其转换为十进制数值,忽略前导0

     b. 如果字符串中包含有效浮点格式,如“1.1”,将其转换为对应的浮点数字,忽略前导0

     c. 如果字符串中包含有效的十六进制格式,如“0xf”,将其转换为相同大小的十进制数值

     d. 如果字符串为空,或者是空内容,将其转换为0

     e. 如果字符串中包含除上述格式之外的字符,则将其转换为NaN

parseInt()

// 返回12,如果第一个字符是数字会解析知道遇到第一个小数点结束
var num1 = parseInt("12.3abc");   
// 返回NaN,如果第一个字符不是数字或者符号就返回NaN
var num2 = parseInt("abc123");  

parseFloat()

parseFloat()把字符串转换成浮点数,parseFloat()和parseInt非常相似,不同之处在与
  parseFloat会解析第一个. 遇到第二个.或者非数字结束
    如果解析的内容里只有整数,解析成整数

+,-0等运算

var str = '500';
console.log(+str);      // 取正
console.log(-str);      // 取负
console.log(str - 0);

转换成布尔类型

Boolean()

0     ' '    null undefined      NaN会转换成false,其它都会转换成true。

4. JavaScript 运算

4.1 算术运算符

+ - * / %  

4.2 一元运算符

一元运算符:只有一个操作数的运算符

5 + 6 两个操作数的运算符是二元运算符

++ 自身加1,-- 自身减1

前置++  先将自身的值自增1,再将自增后的值赋值给变量

var num1 = 5;
++ num1; 

var num2 = 6;
console.log(num1 + ++ num2);

后置++   先将自身的值赋值给变量,然后再自增1

var num1 = 5;
num1 ++;    
var num2 = 6 
console.log(num1 + num2 ++);

总结:

前置++: 参与运算输出

后置++:​运算完毕输出

4.3 逻辑运算符(布尔运算符)

        && 与 两个操作数同时为true,结果为true,否则都是false
        || 或 两个操作数有一个为true,结果为true,否则为false
        ! 非  取反

4.4 关系运算符(比较运算符)

        <  >  >=  <= == != === !==
       ==与===的区别:==只进行值得比较,===类型和值同时相等,则相等

       var result = '55' == 55;    // true
       var result = '55' === 55;   // false
值相等,类型不相等
       var result = 55 === 55;     // true

4.5 赋值运算符

        =     +=  -=   *=   /=   %=
       num += 5;   //相当于  num = num + 5;

4.6 运算符的优先级

优先级从高到底如下:

括号>点运算符>一元运算符> 算数运算符 >关系运算符>相等运算符>逻辑运算符 >赋值运算符

注意:同级运算符先后顺序如下:

一元运算符  ++   --   !
算数运算符  先*  /  %   后 +   -
关系运算符  >   >=   <   <=
相等运算符   ==   !=    ===    !==
逻辑运算符 先&&   后||
4 >= 6 || '人' != '阿凡达' && !(12 * 2 == 144) && true
True
布尔类型 ? 真 : 假;


var num = 10;
5 == num / 2 && (2 + 2 * num).toString() === '22'
 true

5. 流程控制

5.1 流程控制介绍

程序的三种基本结构

顺序结构:从上到下执行的代码就是顺序结构(程序默认就是由上到下顺序执行的)

分支结构:根据不同的情况,执行对应代码

循环结构:重复做一件事情

5.2 分支语句

5.2.1 if语句

if 语句 - 只有当指定条件为 true 时,使用该语句来执行代码

if...else 语句 - 当条件为 true 时执行代码,当条件为 false 时执行其他代码

if...else if....else 语句- 使用该语句来选择多个代码块之一来执行

语法格式:

第一种
if (/* 条件表达式 */) {
 // 执行语句
}
第二种
if (/* 条件表达式 */){
 // 成立执行语句
} else {
 // 否则执行语句
}	
第三种
if (/* 条件1 */){
 // 成立执行语句
} else if (/* 条件2 */){
 // 成立执行语句
} else if (/* 条件3 */){
 // 成立执行语句
} else {
 // 最后默认执行语句
}

示例 : if案例判断一个人的年龄是否满18岁(是否成年)

var age = prompt("请输入年龄:");
  console.log(age);
  console.log( typeof age);//string */
  // NaN与任何值都不相等,包括它本身
  // console.log("NaN:"+NaN == NaN);
  // var age = 18;
  age = Number (age);
  if (isNaN(age) == true){
    console.log("请重新输入")
  } else if (age >= 18){
    console.log("成年人");
  } else  {
    console.log("未成年人");
 } 

示例 :  if 案例求两个数最大数

 // 求两个数最大数
  var num$1 = 200;
  var num$2 = 200;
  if(num$1 > num$2) {
    console.log("最大值是:" + num$1);
  } else if (num$1 == num$2) {
    console.log( num$1 + "与" + num$2 + "相等!");
  } else {
    console.log("最大值是:" + num$2);
  }

示例 : if 案例奇偶数判断

奇偶数判断
  // 0 2 4 6  8 10 12
  var num1 = 1111;
  if( typeof num1 == "number"){
    console.log(11111);
      if (num1 % 2 == 0) {
      console.log(num1 +"是偶数!");
    } else if(num1 % 2 != 0) {
      console.log(num1 +"是奇数!");
    }
  } else {
    console.log("不是数字")
  }

示例 : if 案例百分制转换成等级制

百分制转换成等级制
  var score = "鸡蛋";
  if(score < 60) {
    console.log("不及格");
  } else if (score >= 60&&score < 70){
    console.log("一般");
  } else if (score >=70 && score <80){
    console.log("良好");
  } else if (score >= 80 && score < 90){
    console.log("优秀")
  } else if (score >= 90 && score < 100){
    console.log("厉害");
  } else if (score == 100){
    console.log("牛逼");
  } else {
    console.log("卧槽无情!")
  }

5.2.2 三元运算符

表达式1 ? 表达式2 : 表达式3

是对if……else语句的一种简化写法

5.2.3 switch 语句 

switch 语句 - 使用该语句来选择多个代码块之一来执行

语法格式:

switch (expression) {
 case 常量1:
   语句;
   break;
 case 常量2:
   语句;
   break;
 case 常量3:
   语句;
   break;
 …
 case 常量n:
   语句;
   break;
 default:
   语句;
   break;
}

break可以省略,如果省略,代码会继续执行下一个case。

default 关键词来规定匹配不存在时做的事情。

switch 语句在比较值时使用的是全等操作符, 因此不会发生类型转换(例如,字符串'10' 不等于数值 10)

示例 : switch 案例显示星期几

 var day = Number(prompt("请输入周几"));
switch (day) {
    case 1:
      console.log("周一");
      break;//必须加上,表示终止
    case 2:
      console.log("周二");
      break;
    case 3:
      console.log("周三");
      break;
    case 4:
      console.log("周四");
      break;
    case 5:
      console.log("周五");
      break;
    case 6:
      console.log("周六");
      break;
    case 7:
      console.log("周日");
      break;
    default:// else
      console.log("重新输入");
      break;
  }

示例:switch案例百分制转换成等级制

var score = prompt("请输入分数");
  score = parseInt(score / 10);
  switch (score) {
    case 10:
      alert("优秀");
      break;
    case 9:
      alert("优秀");
      break;
    case 8:
      alert("良好");
      break;
    case 7:
      alert("良好");
      break;
    case 6:
      alert("及格");
      break;
    default:
      alert("不及格");
      break;
  }

5.2.4 分支结构总结

if语句和switch语句的区别:

if语句:

表达式的结果为boolean类型。常用于区间判断

switch语句:

switch case 使用严格比较(===),值必须与要匹配的类型相同,只有操作数属于同一类型时,严格比较才能为 true。在以下这个例子中,x 将不匹配。

var x = "0";
switch (x) {
 case 0:
  text = "Off";
  break;
 case 1:
  text = "On";
  break;
 default:
  text = "No value found";
}

能用switch语句实现的就一定可以使用if实现,但是反之不一定,如果是区间范围就采用if,如果是等值判断使用switch

布尔类型的隐式转换

If语句会把后面的值隐式转换成布尔类型

转换为true :  非空字符串  非0数字  true  任何对象

转换成false : 空字符串  0  false  null  undefined

 5.3 循环结构

        在javascript中,循环语句有三种,while、do..while、for循环。

5.3.1 while 语句

while 循环会在指定条件为真时循环执行代码块。

基本语法:

// 当循环条件为true时,执行循环体,
// 当循环条件为false时,结束循环。
while (循环条件) {
 //循环体	
}

示例:while案例打印1-100之间所有数的和

// 计算1-100之间所有数的和
// 初始化变量
var i = 1;
var sum = 0;
// 判断条件
while (i <= 100) {
 // 循环体
 sum += i;
 // 自增
 i++;
}
console.log(sum);

示例:while案例打印100以内 7的倍数

打印100以内 7的倍数
  var j = 0;
  while (j <= 100) {
    // console.log(j);
    if (j % 7 == 0) {
      console.log(j);
    }
    j++;
  }

示例:while案例打印100以内所有偶数

示例:while案例打印100以内所有偶数的和

示例:while案例打印100以内的奇数

示例:while案例打印100以内的奇数的和

打印100以内所有偶数、奇数、偶数和、奇数和
  var x = 0,sumO = 0,sumJ = 0;
  var sumj;
  while (x <= 100) {
    if(x % 2 == 0){
      console.log(x + "是偶数");
      sumO += x;
    } else {
      console.log(x + "是奇数");
      sumJ += x;
    }
    x++;
  }
  console.log("偶数和:" + sumO);
  console.log("奇数和:" + sumJ);
  // a not is defined :a没有通过var定义声明,程序是报错
  // undefined :表示一个变量通过var定义声明了,数据类型是undefined ,程序无错

5.3.2 do...while 语句

        do..while循环和while循环非常像,二者经常可以相互替代,但是do..while的特点是不管条件成不成立,都会执行一次。

        基础语法:

do {
 // 循环体;
} while (循环条件);

示例:do...while案例打印1-100之间所有数的和

求1-100之间的所有数的和 
  var i = 0,sum = 0;
  do {
    sum += i;
    i++;
  }while (i <= 100)
  console.log(sum);

示例:do...while案例打印100以内 7的倍数

打印100以内 7的倍数
  var j = 0;
  do {
    if(j % 7 == 0){
      console.log(j);
    }
    j++;
  } while (j <= 100)

5.3.3 for 语句

        while和do...while一般用来解决无法确认次数的循环。for循环一般在循环次数确定的时候比较方便

        for循环语法:

// for循环的表达式之间用的是;号分隔的,千万不要写成,
for (初始化表达式1; 判断表达式2; 自增表达式3) {
 // 循环体4
}

演示示例:for循环案例打印1-100之间所有数

演示示例:for循环案例求1-100之间所有数的和

求1-100之间的所有数的和
  var sum = 0;
  for (var i = 0; i <= 100; i++) {
    sum += i;
  }
  console.log(sum);

演示示例:for循环案例求1-100之间所有数的和的平均值

演示示例:for循环案例求1-100之间所有偶数的和

演示示例:for循环案例同时求1-100之间所有偶数和奇数的和

打印100以内所有偶数、奇数、偶数和、奇数和
  var sumO = 0;
  var sumJ = 0;
  for (var i = 0; i <= 100; i++) {
    // console.log(i);
    if (i % 2 == 0) {
      console.log(i + "是偶数");
      sumO += i;
    } else {
      console.log(i + "是奇数");
      sumJ += i;
    }
  }

演示示例:for循环案例打印正方形

 for (var i = 0;i <= 5;i++){
      for(var j = 0;j <= 11;j++){
        document.write("♠");
      }
      document.write("<br>");
    }

演示示例:for循环案例打印直角形

for (var i = 0; i <= 4; i++) {
    for (var j = 0; j <= i; j++) {
      document.write("♠");
    }
    document.write("<br>");
  }

5.3.4 continue 和 break

break:立即跳出整个循环,即循环结束,开始执行循环后面的内容(直接跳到大括号)

continue:立即跳出当前循环,继续下一次循环(跳到i++的地方)

演示示例:求整数1~100的累加值,但要求碰到个位为3的数则停止累加(break)
演示示例:求整数1~100的累加值,但要求跳过所有个位为3的数(continue)

for (var i = 0;i <= 100; i++){
      if (i % 7 == 0 ){
        if (i == 21){
          continue;//跳出当前循环,继续执行下一次循环
        }
        if (i == 49){
          continue
        }
        if (i == 77){
          break; //跳出整个大循环,不往下执行了
        }
        console.log(i);
      }
    }

5.3.5 循环语句区别

1、循环结构的表达式不同

do-while循环结构表达式为:do{循环体;}。

for循环的结构表达式为:for(单次表达式;条件表达式;末尾循环体){中间循环体;}。

while循环的结构表达式为:while(表达式){循环体}

2、执行时判断方式不同

do-while循环将先运行一次,因为经过第一次do循环后,当检查条件表达式的值时,其值为 不成立时而会退出循环。保证了至少执行do{ }内的语句一次。

for循环执行的中间循环体可以为一个语句,也可以为多个语句,当中间循环体只有一个语句时,其大括号{}可以省略,执行完中间循环体后接着执行末尾循环体。

while循环执行时当满足条件时进入循环,进入循环后,当条件不满足时,执行完循环体内全部语句后再跳出(而不是立即跳出循环)。

3、执行次数不同

do-while循环是先执行后判断,执行次数至少为一次。

for循环是先判断后执行,可以不执行中间循环体。

while循环先判断后执行,可以不执行中间循环体。

5.4 调试

(1)、alert()

(2)、console.log()

(3)、debugger 关键字

debugger 关键字用于停止执行 JavaScript,并调用调试函数。这个关键字与在调试工具中设置断点的效果是一样的。如果没有调试可用,debugger 语句将无法工作。开启 debugger ,代码在第三行前停止执行。

var x = 15 * 5;
debugger;
document.getElementById("demo").innerHTML = x;
//开启调试工具,在代码执行到第三行前会停止执行。

(4)、断点调试

断点调试是指自己在程序的某一行设置一个断点,调试时,程序运行到这一行就会停住,然后你可以一步一步往下调试,调试过程中可以看各个变量当前的值,出错的话,调试到出错的代码行即显示错误,停下。

调试步骤:

浏览器中按F12-->sources-->找到需要调试的文件-->在程序的某一行设置断点

调试中的相关操作:

Watch: 监视,通过watch可以监视变量的值的变化,非常的常用。
       F10: 程序单步执行,让程序一行一行的执行,这个时候,观察watch中变量的值的变化。
       F8:跳到下一个断点处,如果后面没有断点了,则程序执行结束。

注意: 监视变量,不要监视表达式,因为监视了表达式,那么这个表达式也会执行。

代码调试的能力非常重要,只有学会了代码调试,才能学会自己解决bug的能力。初学者不要觉得调试代码麻烦就不去调试,知识点花点功夫肯定学的会,但是代码调试这个东西,自己不去练,永远都学不会。

今天学的代码调试非常的简单,只要求同学们记住代码调试的这几个按钮的作用即可,后面还会学到很多的代码调试技巧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Iiversse

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值