JavaScript高级程序设计(第3版)学习笔记3 js简单数据类型

JavaScript高级程序设计(第3版)学习笔记3 js简单数据类型

学习目标

1.了解JS中的7种数据类型

2.掌握“==”和“===”的区别和使用

3.掌握JS中数据类型转换的规则

7种数据类型

在JS中,一共有7种数据类型:undefined、null、布尔、数字、字符串、对象和符号。其中,前六种是基本数据类型,后面会详细介绍对象类型。

undefined和null

undefined表示一个声明了但未被赋值的变量,null表示一个空对象指针,即一个已经被赋值为null的变量。在使用时,不要将null和undefined与其他值做比较,因为null和undefined只与自身严格相等,与其他任何值都不相等,包括它们本身的类型也不相等。

布尔、数字和字符串

布尔类型用于表示逻辑上的“真”和“假”,其值只有两个:true和false。数字类型可以表示各种数值,包括整数和浮点数。字符串类型用于表示文本,可以使用单引号、双引号或反引号括起来。

对象和符号

对象类型用于表示一组相关的数据和功能,比如日期对象、数组对象、函数对象等等。符号类型是ES6新增的类型,用于表示唯一的标识符。

“==”和“===”的区别和使用

在JS中,可以使用“==”和“===”来比较两个值是否相等。“==”是非严格比较,会进行类型转换,而“===”是严格比较,不会进行类型转换。

在使用时,建议使用“===”进行比较。只有在确实需要进行类型转换的情况下,才使用“==”。

示例1

let a = 10;
let b = '10';
console.log(a == b); // true,会将b转换为数字类型10再进行比较
console.log(a === b); // false,类型不一致

示例2

let c = undefined;
let d = null;
console.log(c == d); // true,只有null和undefined两种情况会相等
console.log(c === d); // false,类型不一致

数据类型转换规则

在JS中,有些操作会导致数据类型转换,比如将字符串转换为数字、将对象转换为原始值等等。JS中的数据类型转换比较灵活,有时候会出现一些意想不到的结果。

字符串转换为数字

在将字符串转换为数字时,JS会尝试将字符串解析为数字,如果解析失败,则会返回NaN。如果字符串是以数字开头的,JS会将这个数字解析出来,否则返回NaN。

console.log(parseInt('123')); // 123
console.log(parseInt('123abc')); // 123
console.log(parseInt('abc')); // NaN

对象转换为原始值

当JS需要将对象转换为原始值时,会调用对象的valueOf()和toString()方法。valueOf()方法用于返回对象的原始值,toString()方法将对象转换为字符串。

let obj = {
  valueOf: function() {
    return 10;
  },
  toString: function() {
    return 'obj';
  }
};
console.log(Number(obj)); // 10,调用valueOf()方法返回原始值
console.log(String(obj)); // 'obj',调用toString()方法转换为字符串

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript高级程序设计(第3版)学习笔记3 js简单数据类型 - Python技术站

(0)
上一篇 2023年5月17日
下一篇 2023年5月17日

相关文章

  • XHTML下,JS浮动代码失效的问题

    XHTML是HTML的一种更加严格的版本,需要符合更为严格的规范,语法上更为规范化。JS浮动代码在XHTML下失效,主要是因为XHTML不允许使用空标签来代替一些书写不完整的标签,如img、input等。因此,浮动代码在XHTML下需要进行一些特殊处理。 以下是两个解决XHTML下JS浮动失效问题的示例: 1.将浮动元素封装在一个div中 <!DOCT…

    JavaScript 2023年6月11日
    00
  • 解析JavaScript数组方法reduce

    解析JavaScript数组方法reduce reduce()是JavaScript数组对象自带的方法之一,可以对数组中的所有元素依次执行一个指定的回调函数,返回一个累加的结果。它的语法如下: arr.reduce(callback[, initialValue]) 其中,callback是一个函数,它可以接受四个参数: accumulator:累加器的值(…

    JavaScript 2023年5月27日
    00
  • JavaScript将字符串转换为整数的方法

    JavaScript中将字符串转换成整数的方法有多种,以下是其中的四种方法。 1. parseFloat方法 parseFloat方法将字符串解析成浮点数,如果字符串开头部分可以解析成浮点数的话,就返回该浮点数,否则返回NaN。 let str = "1234.567"; let num = parseFloat(str); consol…

    JavaScript 2023年5月28日
    00
  • 推荐20家国外的脚本下载网站

    下面是详细讲解“推荐20家国外的脚本下载网站”的完整攻略: 1. 确定搜索关键词 当我们想要寻找国外的脚本下载网站的时候,搜索引擎是我们的好帮手。我们可以使用以下关键词来搜索: script download sites code download sites javascript libraries download free script downloa…

    JavaScript 2023年6月11日
    00
  • 你有必要知道的25个JavaScript面试题

    下面是详细讲解“你有必要知道的25个JavaScript面试题”的完整攻略。 介绍 在面试过程中,JavaScript是一个非常重要的方面,掌握常见的JavaScript面试题可以帮助我们更好地准备面试。这里整理了25个常见的JavaScript面试题供大家参考。 问题列表 1. typeof null 返回什么? typeof null 返回 “objec…

    JavaScript 2023年5月28日
    00
  • JavaScript中Date对象的常用方法示例

    JavaScript中Date对象是用来表示日期和时间的对象,它对日期和时间的处理非常方便。下面是几个常用的Date对象的方法: 获取当前日期和时间 方法名称:getDate() 该方法返回日期(1-31)。 let today = new Date();   let day = today.getDate(); console.log("今天是&…

    JavaScript 2023年6月10日
    00
  • JS中的算法与数据结构之集合(Set)实例详解

    JS中的算法与数据结构之集合(Set)实例详解 1. 什么是Set? Set 是ES6新增的数据结构,它是一种无序且唯一的数据集合,类似于数组,但是它不允许有相同的元素存在,可以用来存储任何类型的值(对象,字符串,数字等)。 Set可以显著地提高数据读取效率和数据去重的效果。 2. Set的使用方法 2.1 创建Set并添加元素 // 创建set const…

    JavaScript 2023年5月28日
    00
  • js键盘事件实现人物的行走

    关于“js键盘事件实现人物的行走”的攻略,我可以提供以下几点内容: 实现过程 获取元素和初始化人物位置 首先需获取人物元素,以及初始化人物所在的位置。获取元素可以使用document.getElementById()或document.querySelector()方法,而初始位置可以使用CSS属性left和top来设置。 const man = docum…

    JavaScript 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部