javascript的隐式转换的简单介绍

本文目录一览:

javascript 隐式转换问题 “true” == true

== 判断规则:

如果两个值类型相同,进行 === 比较。

如果两个值类型不同,他们可能相等。根据下面规则进行类型转换再比较:

如果一个是null、一个是undefined,那么[相等]。

如果一个是字符串,一个是数值,把字符串转换成数值再进行比较。

如果任一值是 true,把它转换成 1 再比较;如果任一值是 false,把它转换成 0 再比较。

果一个是对象,另一个是数值或字符串,把对象转换成基础类型的值再比较。对象转换成基础类型,利用它的toString或者valueOf方法。js核心

内置类,会尝试valueOf先于toString;例外的是Date,Date利用的是toString转换。非js核心的对象,令说(比较麻烦,我也

不大懂)

任何其他组合,都[不相等]。

特别需要注意的是true、false的转换,例如:

alert(true == 1); //ture

alert(true == 2); //false, true会转换成number,也就是1,当然 1 不等于 2

//可以使用 !! 来把一个数据类型转换为boolean型

alert(true == !!2) //true,!2 === false !(!=2) = !false = true

另外在js中,如果把一个变量用在逻辑运算中,那么变量在无初始值或者其值为 0、-0、null、””、false、undefined 或者 NaN时,它的值为 false。否则,其值为 true。

Javascript的typeof返回哪些数据类型?

1)返回数据类型

undefined

string

boolean

number

symbol(ES6)

Object

Function

2)强制类型转换

Number(参数) 把任何类型转换成数值类型。

parseInt(参数1,参数2) 将字符串转换成整数

parseFloat()将字符串转换成浮点数字

string(参数):可以将任何类型转换成字符串

Boolean() 可以将任何类型的值转换成布尔值。

3)隐式类型转换

1.四则运算

加法运算符+是双目运算符,只要其中一个是String类型,表达式的值便是一个String。

对于其他的四则运算,只有其中一个是Number类型,表达式的值便是一个Number。

对于非法字符的情况通常会返回NaN:

‘1’ * ‘a’ // = NaN,这是因为parseInt(a)值为NaN,1 * NaN 还是 NaN

2.判断语句

判断语句中的判断条件需要是Boolean类型,所以条件表达式会被隐式转换为Boolean。 其转换规则同Boolean的构造函数。如:

var obj = {};if(obj){

while(obj);}

3.Native代码调用

JavaScript宿主环境都会提供大量的对象,它们往往不少通过JavaScript来实现的。 JavaScript给这些函数传入的参数也会进行隐式转换。如BOM提供的alert方法接受String类型的参数:

alert({a: 1}); // = [object Object]

js面试题,3种强制类型转换和2种隐式类型转换是什么

三种强制类型转换:String(),Boolean(),Number();

(还有两个:parseInt和parseFloat 应该也算吧)

2种隐式类型:+和-

js数组怎么隐式转化成number

可以通过以下3种方法来将string值转换成number:

1.调用Number()来对string进行值类型转换。

2.parseInt()。

3.parseFloat()。

Number()

使用Number()函数来对string进行强制类型转换是最直接的做法。不过,这种做法有一个局限性:如果字符串截去开头和结尾的空白字符后,不是纯数字字符串,那么最终返回结果为NaN。

代码如下:

var a = ” 42″;

var b = ” 42mm”;

var c = “0xff”;

var d = “42.34”;

console.log(Number(a));//42

console.log(Number(b));//NaN

console.log(Number(c));//255

console.log(Number(d));//42.34

parseInt()

原创文章,作者:CCDW,如若转载,请注明出处:https://www.506064.com/n/143256.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
CCDWCCDW
上一篇 2024-10-14 18:46
下一篇 2024-10-14 18:46

相关推荐

  • Python简单数学计算

    本文将从多个方面介绍Python的简单数学计算,包括基础运算符、函数、库以及实际应用场景。 一、基础运算符 Python提供了基础的算术运算符,包括加(+)、减(-)、乘(*)、除…

    编程 2025-04-29
  • Python满天星代码:让编程变得更加简单

    本文将从多个方面详细阐述Python满天星代码,为大家介绍它的优点以及如何在编程中使用。无论是刚刚接触编程还是资深程序员,都能从中获得一定的收获。 一、简介 Python满天星代码…

    编程 2025-04-29
  • Python海龟代码简单画图

    本文将介绍如何使用Python的海龟库进行简单画图,并提供相关示例代码。 一、基础用法 使用Python的海龟库,我们可以控制一个小海龟在窗口中移动,并利用它的“画笔”在窗口中绘制…

    编程 2025-04-29
  • Python樱花树代码简单

    本文将对Python樱花树代码进行详细的阐述和讲解,帮助读者更好地理解该代码的实现方法。 一、简介 樱花树是一种图形效果,它的实现方法比较简单。Python中可以通过turtle这…

    编程 2025-04-28
  • Python大神作品:让编程变得更加简单

    Python作为一种高级的解释性编程语言,一直被广泛地运用于各个领域,从Web开发、游戏开发到人工智能,Python都扮演着重要的角色。Python的代码简洁明了,易于阅读和维护,…

    编程 2025-04-28
  • 用Python实现简单爬虫程序

    在当今时代,互联网上的信息量是爆炸式增长的,其中很多信息可以被利用。对于数据分析、数据挖掘或者其他一些需要大量数据的任务,我们可以使用爬虫技术从各个网站获取需要的信息。而Pytho…

    编程 2025-04-28
  • 使用JavaScript日期函数掌握时间

    在本文中,我们将深入探讨JavaScript日期函数,并且从多个视角介绍其应用方法和重要性。 一、日期的基本表示与获取 在JavaScript中,使用Date对象来表示日期和时间,…

    编程 2025-04-28
  • JavaScript中使用new Date转换为YYYYMMDD格式

    在JavaScript中,我们通常会使用Date对象来表示日期和时间。当我们需要在网站上显示日期时,很多情况下需要将Date对象转换成YYYYMMDD格式的字符串。下面我们来详细了…

    编程 2025-04-27
  • 如何制作一个简单的换装游戏

    本文将从以下几个方面,为大家介绍如何制作一个简单的换装游戏: 1. 游戏需求和界面设计 2. 使用HTML、CSS和JavaScript开发游戏 3. 实现游戏的基本功能:拖拽交互…

    编程 2025-04-27
  • Guava Limiter——限流器的简单易用

    本文将从多个维度对Guava Limiter进行详细阐述,介绍其定义、使用方法、工作原理和案例应用等方面,并给出完整的代码示例,希望能够帮助读者更好地了解和使用该库。 一、定义 G…

    编程 2025-04-27

发表回复

登录后才能评论