ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

02.JavaScript学习笔记1

2022-08-18 00:32:08  阅读:144  来源: 互联网

标签:02 console log 23 favourite JavaScript 笔记 else 强制


JavaScript学习笔记

1.强制类型转换

  • 当使用加号进行运算时,会将数字强制转换为字符串,然后再进行运算。
const year = '1991';
console.log(year + 18);
console.log(typeof(year + 18));

将代码放入控制台执行,可得知结果是字符串'199118'。

  • 当使用减号进行计算时,会将字符串强制转换为数字,再进行运算。
let data = '23'-'10'-3
console.log(data)
console.log(typeof(data))

将代码放入控制台执行,可得知结果是数字10。

  • 强制类型转换的函数
const name = 'jonas'
console.log(Number(name))
console.log(typeof Number(name))

Number函数可以将字符串转换为数字类型,如上Number(name)的输出结果为NaN。NaN也属于数字类型。

2.区分 " ===" 和 " == "

三等号被称为严格相等运算符,它不执行强制类型转换,只有当两个值完全相同时,才会返回 true。

双等号是松散相等运算符,当等号两边类型不同时,它会先进行强制类型转换,再进行比较。

" !== " 严格不相等," != "松散不相等 (会执行强制类型转换)

3. if / else if / else 判断语句

if(条件){代码块}
else if(条件){代码块}
else{代码块}

如上图,先判断 if 语句括号里的条件是否为true,如果为true则执行if语句下的 {代码块} 。如果if括号里的条件为false,则继续判断else if里的条件是否为true,这里的else if可以添加很多个。如果 if / else if 的条件都为false,则会执行else语句下的 {代码块} 。

举例:

const favourite = Number(prompt("what's your favourite number?"));
console.log(favourite);
console.log(typeof favourite);

if(favourite === 23){
    console.log('cool! 23 is an amazing number!')
}  else if (favourite === 7){
    console.log('7 is a cool number!')
} else {
    console.log('Number is not 23 or 7!')
}
/*初始条件为假时,不会马上进入else块,而是一个一个检查else if块*/
if(favourite !== 23){console.log('wht not 23?')}

4.真值和假值

const money = 0;
if (money) {console.log("true")}
else{console.log("false")}

在if 判断语句中,会将括号内的值 (money) 强制转换为bool类型

数字0 强制转换为bool类型的结果是:false。

javascript中有5个值强制转换为bool类型的结果为false,分别是:

0 ,' ' , undefind, null,NaN

举例:

let height = 0 ; /* 0 强制转换为 bool类型 'false' */
if (height) console.log('Height is defined');
else console.log('height is undefined');

当height = 0时,会输出else语句下的代码块,但height并非undefined。

标签:02,console,log,23,favourite,JavaScript,笔记,else,强制
来源: https://www.cnblogs.com/passion2021/p/16597269.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有