JavaScript数据类型及相互间的转换规则

yizhihongxing

JavaScript数据类型及相互间的转换规则

在JavaScript中,数据类型可以分为基本数据类型和引用数据类型,其中基本数据类型包括:数字、字符串、布尔值、null、undefined以及symbol(ES6新增),引用数据类型包括:对象、数组、函数等。

基本数据类型

数字

数字类型包括整数和浮点数。JavaScript中所有数字都是浮点数,例如:

let num = 10;   // 整数
let floatNum = 3.14;   // 浮点数

字符串

字符串是一组由单引号、双引号或反引号括起来的字符序列,例如:

let str1 = 'Hello world!';
let str2 = "JavaScript is great!";

布尔值

布尔值只有两种取值:true和false,例如:

let isDone = true;
let isOver = false;

null

null表示一个空对象指针,例如:

let value = null;

undefined

undefined表示一个未定义的值,例如:

let value;
console.log(value);   // 输出undefined

Symbol

Symbol是一种新增的基本数据类型,它表示一种唯一标识符。每个Symbol值都是唯一的,例如:

let sym1 = Symbol('foo');
let sym2 = Symbol('foo');
console.log(sym1 === sym2);   // 输出false

引用数据类型

对象

对象是一组无序的键值对集合,例如:

let obj = {
    name: '张三',
    age: 20,
    gender: '男'
};

数组

数组是一组有序的数据集合,例如:

let arr = [1, 2, 3, 4];

函数

函数是一段可重复使用的代码块,例如:

function add(a, b) {
    return a + b;
}

数据类型相互间的转换规则

JavaScript中的数据类型间可以互相转换,转换规则如下:

字符串转数字

字符串可以通过调用Number()或parseFloat()函数转换为数字,例如:

let str = '123';
console.log(Number(str));   // 输出123
console.log(parseFloat(str));   // 输出123

数字转字符串

数字可以通过调用toString()或String()函数转换为字符串,例如:

let num = 123;
console.log(num.toString());   // 输出'123'
console.log(String(num));   // 输出'123'

布尔值转数字

true转换为数字1,false转换为数字0,例如:

let isDone = true;
console.log(Number(isDone));   // 输出1

数字转布尔值

除0和NaN以外的数字都转换为true,0和NaN转换为false,例如:

console.log(Boolean(123));   // 输出true
console.log(Boolean(0));   // 输出false
console.log(Boolean(NaN));   // 输出false

对象转原始类型

对象转字符串

对象可以通过调用toString()或valueOf()方法将其转换为字符串,例如:

let obj = {};
console.log(obj.toString());   // 输出'[object Object]'
console.log(obj.valueOf());   // 输出{}

对象转数字

对象可以通过valueOf()方法将其转换为数字,例如:

let obj = { valueOf: function() { return 123; } };
console.log(Number(obj));   // 输出123

字符串和数字之间的转换

字符串转数字

如果字符串只包含数字字符,则直接转换为数字,否则转换为NaN,例如:

console.log(Number('123'));   // 输出123
console.log(Number('3.14'));   // 输出3.14
console.log(Number('abc'));   // 输出NaN

数字转字符串

直接调用toString()方法将数字转换为字符串即可,例如:

console.log(123.toString());   // 输出'123'
console.log(String(3.14));   // 输出'3.14'

示例说明

示例一

let str = '123';
console.log(Number(str));   // 输出123
console.log(parseFloat(str));   // 输出123

这个例子演示了如何将字符串'123'转换为数字。

示例二

let obj = { valueOf: function() { return 123; } };
console.log(Number(obj));   // 输出123

这个例子演示了如何将对象转换为数字,使用了valueOf()方法返回一个包含数字123的对象。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript数据类型及相互间的转换规则 - Python技术站

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

相关文章

  • JavaScript数值类型知识汇总

    JavaScript数值类型知识汇总 JavaScript中常用的数值类型包括整数、浮点数和NaN。 整数 整数是没有小数部分的数字。JavaScript中可以使用十进制、二进制、八进制和十六进制来表示整数。 十进制整数 十进制整数是常用的整数表示方法,可以直接使用如下方式定义整数变量: let num = 123; 二进制整数 在JavaScript的EC…

    JavaScript 2023年5月18日
    00
  • 从0到1搭建element后台框架优化篇(打包优化)

    那我来详细讲解一下从0到1搭建element后台框架优化篇中的打包优化。 简介 打包优化是在项目上线前必须进行的重要操作之一,它可以优化项目的加载速度和性能,提升用户体验。在本篇文章中,我们将通过一些实例来介绍如何对 element 后台框架进行打包优化。 优化策略 在进行打包优化时,我们通常采用以下策略: 按需加载:将不常用的组件或库进行按需加载,减少文件…

    JavaScript 2023年6月10日
    00
  • JS根据json数组多个字段排序及json数组常用操作

    JS根据json数组多个字段排序及json数组常用操作 JSON数组是前端开发中常用的数据类型,掌握对JSON数组的操作是前端开发的必要技能之一。本文将详细讲解如何在JS中根据JSON数组中的多个字段进行排序,并介绍JSON数组常用的操作方法。 一、JSON数组排序 1.1 单字段排序 对于只有一个字段需要排序的JSON数组,可以使用Array.protot…

    JavaScript 2023年5月27日
    00
  • JS event使用方法详解

    关于JS Event使用方法的详解,可以从以下几个方面入手: 1. 什么是JS Event(事件)? 在JavaScript中,Event是一种交互方式,可以监听用户的行为,例如鼠标点击、键盘输入等;也可以监听浏览器或者文档的行为,例如窗口的加载、滚动等。当某种交互或者事件发生时,Event会对应地触发相应的回调函数。 2. JS中的Event常见属性和方法…

    JavaScript 2023年5月28日
    00
  • 浅谈js的html元素的父节点,子节点

    当我们在编写 JavaScript 代码时,我们经常需要对 HTML 页面中的元素进行操作,而理解 HTML 元素的父节点和子节点是非常重要的。在本文中,我们将深入讨论这个话题并为您提供完整攻略。 HTML 元素的父节点和子节点 在 HTML 中,父节点表示该节点的上一级节点,而子节点是该节点的下一级节点。例如,如果我们有一个 div 元素,它包含一个 p …

    JavaScript 2023年6月10日
    00
  • JS编程小常识很有用

    JS编程小常识是指在JavaScript编程中,常用到的一些小技巧和注意事项。这些小常识可以帮助开发者以更高效、安全、健壮的方式编写JavaScript代码。下面是一个完整的攻略,包括示例说明 1. 变量声明 使用const和let来声明变量,而不是使用var。 使用const对于不会被重新赋值的变量,使用let对于可能被重新赋值的变量。 不要使用全局变量,…

    JavaScript 2023年6月10日
    00
  • JavaScript 中的作用域与闭包

    作用域 (Scope) 是 JavaScript 代码中的一个重要概念。它定义了变量和函数的可见度以及使用的方式。在 JavaScript 代码中,有着局部作用域和全局作用域。使用作用域可以让代码更加封闭和安全,同时也增加了代码的可读性。 一、作用域的概念 全局作用域: 全局作用域是指在 JavaScript 代码中所有的地方都能访问到的变量、函数和对象; …

    JavaScript 2023年5月28日
    00
  • javascript中拼接HTML字符串的最快、最好的方法

    拼接HTML字符串是在javascript中开发中的一个常见需求。为了避免使用字符串拼接来构造HTML代码时产生的代码难以维护、不易阅读的问题,我们可以使用其他更好的方法来拼接HTML字符串,这是一个更快、更好的方法。 本文将介绍如何通过使用JavaScript来拼接HTML字符串,并给出两个例子,以详细解释每个步骤。 基于字符串模板的拼接 第一个方法是基于…

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