二、基本语法,规范,错误,运算符,判断分支,注释

本文详细介绍了JavaScript的基本语法,包括分号使用、错误分类,深入探讨了算数、比较和逻辑运算符的用法,以及if和switch判断分支的运用。同时,对注释进行了说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

二、基本语法,规范,错误,运算符,判断分支,注释

一、基本语法、规范、错误在这里插入代码片

1.1 基本语法、规范在这里插入代码片

分号代表语句结束,符号左右留空格

var a = 1 + 2;

1.2错误

错误分类:

  • 语法错误:SyntaxError 程序无法执行
  • 通用错误:例如:ReferenceError … 中断执行,中断前的语句正常执行

补充:同一个html文件中不同的<script>内的错误互相之间不影响,无关。

二、运算符

2.1 算数运算符

+、-、*、/、%、()

2.1.1 运算方式

运算顺序:括号运算 > 普通运算符 > 赋值

字符串+任何数据类型的值都为字符串

除法:0/0 -> NaN:Not a Number-> 数字类型

1/0 ->Infinity -1/0 ->-Infinity

取余:0%6 -> 0

++,–

var a = 1,
    b = 2;
//a++先返回再自增 1
console.log(a++);//1
console.log(a);//2
//++b先自增 1 再返回
console.log(++b);//3
//--x x--同理
2.1.2 交换值问题

问:如何交换两个变量的值

  1. 借用中间变量c

  2. aba±-法

    var a = 1,
        b = 2;
    var c = a, //第一种
        a = b,
        b = c;
    a = a + b;//第二种
    b = a - b;
    a = a - b;
    

2.2 比较运算符

<、>、<=、 >=、==、===、!=、 !==

返回值为布尔值

  1. 如果操作数都是数值,则执行数值比较。

  2. 如果操作数都是字符串,则逐个比较字符串中对应字符的ASCII码值

  3. 如果有任一操作数是数值,则将另一个操作数转换为数值,执行数值比较。

    例如:string遇上number会转化成number。

  4. 如果有任一操作数是布尔值,则将其转换为数值再执行比较。

字符串为非纯数字时,则将非数字字符串转成数字的时候会转换为NaN,当NaN和数字比较时不论大小都返回false.

console.log(10 > '6') //true
console.log(1160 > 'str') //false
console.log(10 > '') //true

字符串和字符串比较时,转换成ASCII码值进行比较。从左到右,一个字符一个字符的比较,有胜负则出结果。

console.log('a' > 'b') //false

其他:

1 == 1 //ture,相等不看数据类型
1 == '1' //ture 全等不只看,而且需要判断数据类型是否相等
1 === '1' //false
NaN == NaN //false NaN与包括自己在内的任何东西都不相等

2.3 逻辑运算符(&&与 ||或 !非)

以下值判断一定为假:undefined、null、NaN、0、空字符串、false。 除了这些,其他都是真。

var a = 1 && 2 && undefined && 10;
var b = 0 || null || 1 || 0;
console.log(a, b) // undefined 1
2.3.1 && ||

逻辑判断的方法:

  • &&:遇到真就往后走,遇到假或者走到最后就返回当前的值;
    • 1 && 1 返回1 真
    • 0 && 1 返回0 假
    • 1 && 0 返回0 假
    • 0 && 0 返回0 假
  • ||:遇到假就往后走,遇到真或者走到最后就返回当前的值;
    • 1 || 1 返回1 真
    • 0 || 1 返回1 真
    • 1 || 0 返回1 真
    • 0 || 0 返回0 假

||逻辑或常用位置:

  • 两手准备取值或输出(类似于if判断)
  • 鼠标点击事件,用来设置不同浏览器的兼容性
var name = 'white';
console.log(name || '未找到数据')

a.onclick = function(e) {
    var event = e || window.event //window.event对应IE浏览器鼠标点击事件相关信息
}
2.3.2 !非
var a = !1;
console.log(a); // false

三、判断分支

3.1 if

适用于判断条件是有范围的情况

if (条件) {
    
} else if (条件){
    
} else {
    
}//if else 连写只需要进行一次判断

对if来说,若条件都是互斥的则if不可以分开写。

:if语句可以不写最后的else吗?不可缺少else的原因是什么?

必须写最后一个else会对异常值/不期望出现的值进行处理,体现程序的完整性。

3.2 switch

适用于判断条件是多个定值的情况

switch (变量值) {
    case :
        语句;
        break;
    case :
        语句;
        break;
    default:   // 与 if 的 else 一样的功能:对异常值处理,保证程序完整性
        语句
        break}

break用来中断循环,switch借用来执行中断。

四、注释

// 行注释
/*
 * xxx块注释
 * xxx
 */

image

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值