JavaScript —— 常用数据类型隐式转换

公用方法:

let checkType = (data) => {
    if(data){
        console.log(true);
    }else{
        console.log(false);
    }
}

一、字符串

checkType(‘hello~‘);   // true
checkType(‘‘);   // false

总结:

空字符串会被转换为 false,非空字符串会被转换为 true。

二、数值

checkType(10);   // true
checkType(10.5);   // true
checkType(-10.5);   // true
checkType(0);   // false

总结:

非0数值会被转换为 true,0会被转换为 false。

三、数组

checkType([]);   // true
checkType([‘tome‘, ‘alice‘, ‘jack‘])   // true

总结:

数组都会被转换为 true,如果想让空数组返回false怎么办呢?可以利用数组的 length属性,如下:

checkType([].length);   // false
checkType([‘tome‘, ‘alice‘, ‘jack‘].length)   // true

四、对象

checkType({});   // true
checkType({userId: 1001, userName: ‘jack‘, age: 26});   // true

总结:

对象都会被转换为 true,如果想让空空对象返回false怎么办呢?可以利用数组的 length属性,如下:

checkType(Object.keys({}).length);   // false
checkType(Object.keys({userId: 1001, userName: ‘jack‘, age: 26}).length);   // true

原文地址:https://www.cnblogs.com/xulinjun/p/12015728.html

时间: 2024-10-10 08:54:36

JavaScript —— 常用数据类型隐式转换的相关文章

JavaScript复习之--javascript数据类型隐式转换

JavaScript数据类型隐式转换.一,函数类    isNaN()    该函数会对参数进行隐式的Number()转换,如果转换不成功则返回true.    alert()    输出的内容隐式的转换为字符串. 二,运算符类.    1,算术运算符.       - * / %    如果操作数不是数值,将会隐式的调用Number()函数.按照这个函数的转换规则进行转换.    如果转换不成功,整个表达式返回NaN.       +     如果操作数都是数值,然后进行相加.    任何数据

javascript数据类型隐式转换

一.函数类 isNaN() 该函数会对参数进行隐式的Number()转换,如果转换不成功则返回true; alert() 输出的内容隐式的转换为字符串 二.运算符类 1.算数运算符 -  *   /  % 如果操作数不是数值,将会隐式的调用Number()函数,按照这个函数的转换规则进行转换,如果转换不成功,整个表达式返回NaN + 如果操作数都是数值,然后进行相加 任何数据类型和字符串相加,都会隐私的调用他们的toString()方法,然后返回他们拼接的结果. 如果操作数都是布尔值,那么进行N

JavaScript中关于隐式转换的一些总结

JavaScript运算符中的隐式转换规律:一.递增递减运算符(前置.后置)1.如果包含的是有效数字字符串或者是有效浮点数字符串,则会将字符串转换(Number())为数值,再进行加减操作,返回值的类型是:number类型.2.如果不包含有效数字字符串,则会将字符串的值转换为NaN,返回值的类型是:number类型.3.如果是boolean类型,则先会把true或者false转换为1或者0,再进行加减操作,返回值的类型是:number类型.4.如果是null类型,则先会把null转换为0,在进行

SQL Server有意思的数据类型隐式转换问题

写这篇文章的时候,还真不知道如何取名,也不知道这个该如何将其归类.这个是同事遇到的一个案例,案例比较复杂,这里抽丝剥茧,仅仅构造一个简单的案例来展现一下这个问题.我们先构造测试数据,如下所示: CREATE TABLE TEST (   ID    INT,   GOOD_TYPE  VARCHAR(12),   GOOD_WEIGHT NUMERIC(18,2) )   INSERT INTO dbo.TEST VALUES( 1, 'T1',1.27) SELECT  GOOD_TYPE,

js数据类型隐式转换笔记以及js包装对象

“37”+7              //377 “37”-7              //30 巧用+/-规则  变字符串  x+''   变数字x-0 js里面的==是不严格等于 “123” == 123 0 == false nul l== undefined new  Object() == new Object() [1,2]==[1,2] 但是[1,2]===[1,2]是错的 因为比较的是对象的引用 ps: NaN值和任何东西比较都不相等 即便是不严格等于 ———————————

javascript 隐式转换

学习是一个枯燥无味的过程,有时候我们需要知道一些属性或者用法.但是那完全是不够的.当你还是个孩子的时候,也许你的衣服鞋子足够你穿,随着你年龄的增长,身高.体重增加.这时候你就会告诉妈妈,给我买新衣服.其实我们码农也是这样子的,当你在代码的世界里奋斗了几年,你就会发现自己真的缺少几套新衣服.而我们只能自己努力去找寻这些衣服. 一.运算符的隐式转换 首先我们来看一个例子 var a=12,b="4",c=true,d=[]; //先看看+运算符操作 console.log(a+b);//1

JavaScript的数据类型的隐式转换

什么是弱类型语言?计算机语言的类型可以分为强类型和弱类型两种. 二者之间的区别,就在于计算时,不同类型数据是否可以透明的隐式转换.如果一个语言可以隐式转换它的所有类型,那么它的变量.表达式等在参与运算时,即使类型不正确,也能通过隐式转换来得到正确的类型,这样的语言就属于弱类型语言. 与此相对,强类型语言的类型之间不一定有隐式转换. 弱类型相对于强类型来说,类型检查更不严格,比如允许变量类型的隐式转换,允许强制类型转换等等,而强类型语言一般不允许这么做.一.1+"2"+"2&q

oracle数据类型及其隐式转换

oracle有三种最基本的数据类型,即字符型.数值型.日期型. oracle提供的单行函数中,针对不同的数据类型,提供大量实用的函数,同时提供一系列数据类型转换函数,如下: 1)to_char     数值.日期->字符型     语法:to_char(num|date,[format mask],[nls_parameters])     参数:num|date 待转换的数值或者日期             format mask:可选参数 数字->字符型的可用格式 格式元素 元素说明 格式

JavaScript的隐式转换

原文:JavaScript的隐式转换 JavaScript的数据类型分为六种,分别为null,undefined,boolean,string,number,object.object是引用类型,其它的五种是基本类型或者是原始类型.我们可以用typeof方法打印来某个是属于哪个类型的.不同类型的变量比较要先转类型,叫做类型转换,类型转换也叫隐式转换.隐式转换通常发生在运算符加减乘除,等于,还有小于,大于等.. typeof '11' //string typeof(11) //number '1