js数据类型转换_js数据类型转换long类型 - CSDN
精华内容
参与话题
  • JS几种数据类型转换(最全)

    万次阅读 2018-10-31 16:57:15
    一、转为字符串:使用 .toString或者String。 1、 .toString()方法:注意,不可以转null和underfined //转为字符串-->toString方法 var bool=true;...console.log(bool.toString());...//注意,toString不能转...

    一、转为字符串:使用 .toString或者String。

    1、 .toString()方法:注意,不可以转null和underfined

    //转为字符串-->toString方法
    var bool=true;
    console.log(bool.toString());
    //注意,toString不能转null和underfined.

    2、String()方法:都能转

    console.log(String(null));

    3、隐式转换:num  +  "",当 + 两边一个操作符是字符串类型,一个操作符是其它类型的时候,会先把其它类型转换成字符串再进行字符串拼接,返回字符串

    var a=true;
    var str= a+"";
    console.log('str');

    二、转为数值类型

    1、Number():Number()可以把任意值转换成数值,如果要转换的字符串中有一个不是数值的字符,返回NaN

    console.log(Number(true));

    2、parseInt():

    var a="12.3px";
    console.log(parseInt(a);
    //结果:12.3.  如果第一个字符是数字会解析知道遇到非数字结束.
    var a="abc2.3";
    console.log(parseInt(a);
    结果:返回NaN,如果第一个字符不是数字或者符号就返回NaN.

    3、parseFloat():   parseFloat()把字符串转换成浮点数,parseFloat()和parseInt非常相似,不同之处在与parseFloat会解析第一个. 遇到第二个.或者非数字结束如果解析的内容里只有整数,解析成整数。

    4、隐式转换:

    var str="123";
    var num=str-0;
    console.log(num);
    //结果为数值型;

    三、转换为Boolean():0  ''(空字符串) null undefined NaN 会转换成false  其它都会转换成true

    方法:

    1、Boolean():

    console.log(Boolean(2));

    2、

    var message;
    if(message){};

    3、隐式转换:!!

    var str="123";
    var bool=!!str;
    console.log(str);

     

    展开全文
  • JS数据类型转换

    万次阅读 2019-06-24 23:15:26
    首先我们要知道,在 JS类型转换只有三种情况,分别是: 转换为布尔值 转换为数字 转换为字符串 我们先来看一个类型转换表格,然后再进入正题 转Boolean 在条件判断时,除了 undefined, null, false, NaN, ...
    首先我们要知道,在 JS 中类型转换只有三种情况,分别是:
    • 转换为布尔值
    • 转换为数字
    • 转换为字符串

    我们先来看一个类型转换表格,然后再进入正题
    在这里插入图片描述

    转数字

    强制类型转换:
    parseInt(str, radix)
    parseFloat(str, radix)
    通常将字符串解析为数字(Int–整数,Float–小数),有一定的容错能力,能够将非兼容字符前的部分转换为数字
    - - str 待转换解析的字符串。当地一个字符就是非兼容数字时,得到NaN(Not A Number)
    - - radix 基数(进制),可选,默认为10进制

    Number(param)
    将其他类型转换为数字,没有容错能力,非兼容格式的内容转换为NaN
    - - param 待转换的值
    在这里插入图片描述

    转Boolean

    在条件判断时,除了 undefined, null, false, NaN, ‘’, 0, -0,其他所有值都转为 true,包括所有对象。
    在这里插入图片描述

    对象转原始类型

    对象在转换类型的时候,会调用内置的 [[ToPrimitive]] 函数,对于该函数来说,算法逻辑一般来说如下:

    • 如果已经是原始类型了,那就不需要转换了
    • 调用x.valueof(),如果转换为基础类型,就返回转换的值
    • 调用x.toString(),如果转换为基础类型,就返回转换的值
    • 如果都没有返回原始类型,就会报错

    当然你也可以重写 Symbol.toPrimitive ,该方法在转原始类型时调用优先级最高。

    let a = {
    	valueof() {
    		return 0
    	},
    	toString() {
    		return '1'
    	},
    	[Symbol.toPrimitive]() {
    	    return 2
    	}
    }
    console.log(1 + a) // 3
    
    四则运算符

    加法运算符不同于其他几个运算符,它有以下几个特点:

    • 运算中其中一方为字符串,那么就会把另一方也转换为字符串
    • 如果一方不是字符串或者数字,那么会将它转换为数字或者字符串
    1 + '1' // '11'
    true + true // 2
    4 + [1,2,3] // "41,2,3"
    

    解析:

    • 对于第一行代码来说,触发特点一,所以将数字 1 转换为字符串,得到结果 ‘11’
    • 对于第二行代码来说,触发特点二,所以将 true 转为数字 1
    • 对于第三行代码来说,触发特点二,所以将数组通过 toString 转为字符串 1,2,3,得到结果 41,2,3

    另外对于加法还需要注意这个表达式 ‘a’ + + ‘b’

    'a' + + 'b' // -> "aNaN"
    

    因为 + ‘b’ 等于 NaN,所以结果为 “aNaN”,你可能也会在一些代码中看到过 + ‘1’ 的形式来快速获取 number 类型。
    在这里插入图片描述

    那么对于除了加法的运算符来说,只要其中一方是数字,那么另一方就会被转为数字

    4 * '3' // 12
    4 * [] // 0
    4 * [1, 2] // NaN
    

    比较运算符

    1. 如果是对象,就通过 toPrimitive 转换对象
    2. 如果是字符串,就通过 unicode 字符索引来比较
    let a = {
      valueOf() {
        return 0
      },
      toString() {
        return '1'
      }
    }
    a > -1 // true
    

    在以上代码中,因为 a 是对象,所以会通过 valueOf 转换为原始类型再比较值。

    展开全文
  • 数据类型转换</title> <script> // 转化为字符型 // //1.把数字型转换为字符型 变量.toString() // var num =10; // var str = num.toString(); // console.log(str
    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8">
    		<title>数据类型转换</title>
    		<script>
    			// 转化为字符型
    			// //1.把数字型转换为字符型  变量.toString()
    			//  var num =10;
    			// var str = num.toString();
    			//  console.log(str);
    			//  console.log(typeof str);
    			// //2.利用String()函数
    			// console.log(String(num));
    			// //3.利用+拼接字符串的方法实现转换效果(转换为字符串效果)又称为隐式转换
    			// console.log(num + '');
    			
    			
    			//将其他类型转换为数字型(重点)
    			var age =  prompt("请输入您的年龄");
    			//1.parseInt(变量) 可以把字符型的转换为数字型 得到的是整数
    			console.log(parseInt(age));
    			console.log(parseInt(3.25));//取整数
    			console.log(parseInt(3.99));//依旧是取整数等得到3
    			console.log(parseInt('12px'));//12,会去掉单位
    			console.log(parseInt('rem12px'));//NAN 
    			//2.parseFloat(变量) 可以把字符型的转换为数字型 得到的是小数(浮点数)
    			console.log(parseFloat(3.25));//得小数3.25
    			console.log(parseFloat(3.99));//依旧是取小数得到3.99
    			console.log(parseFloat('12px'));//12,会去掉单位1218
    			console.log(parseFloat('rem12px'));//NAN 
    			//3.利用 Number(变量)强制转换函数
    			var str = '123';
    			console.log(Number(str));
    			console.log(Number('567'));
    			//4.利用了算术运算(减乘除)js 隐式转换 (-*/)
    			console.log('12' - 0);
    			console.log('12' - '5');
    			// 案例:计算年龄,
    			// 此案例要求在页面中弹出一个输入框,输入出生年分后,能计算出我们的年龄
    			// 解题思路:1.弹出一个输入框(prompt),让用户输入出生月份(用户输入)
    			// 		2.把用户输入的值用变量保存起来,然后用今年的年分减去变量值,
    			// 		结果就是现在的年龄.
    			// 		3.弹出警示框(alert),把计算的结果输出(输出结果)
    			// var year=prompt("请您输出您的出生月份");
    			// var age=2020-year;//year 取过来是字符串型,但是这里用的是减法,有隐式转换
    			// alert('您今年已经' + age + '岁了' + '!');
    			// 案例:简单加法器,
    			// 计算两个数的值,用户输入第一个值后,继续弹出第二个输入框并输入第二个值,
    			// 最后通过弹出窗口显示两次输入值相加的结果.
    			var num1=prompt("请输入一个数字");
    			var num2=prompt("请输入另一个数字");//prompt得到的值是字符串型
    			var sum=Number(num1)+Number(num2);//注意数值类型转换Number可换为parseFloat
    			alert("这两个数的和是" + sum);
    			//4.把其他类型转换为双布尔类型
    			console.log(Boolean(''));
    			console.log(Boolean(0));
    			console.log(Boolean(NaN));
    			console.log(Boolean(null));
    			console.log(Boolean(undefined));
    			// 以上都是false
    			console.log(Boolean('123'));
    			console.log(Boolean('你好'));
    			
    		</script>
    	</head>
    	<body>
    	</body>
    </html>
    
    
    
    
    
    1.需要数据转换的原因:
    a.使用表单,prompt获取过来的数据默认是字符串类型的,
    此时就不能直接简单的进行加法运算,因此需要转换数据的类型
    通俗讲:就是将一种数据类型转换为另一种数据类型。
    b.用到较多转换的是转换为字符串类型、数字类型,布尔类型
    
    (转化为字符串)
    方式、说明、案例
    toString()  转成字符串  var num=1; alert(num.toString());
    String()强制转换   转成字符串    var num = 1; alert(String(num));
    加号拼接字符串    和加号拼接起来的结果都是字符串   var num = 1; alert(num+"字符");(重点)
    C.toString 的使用方法是 变量.toString  String的使用方法是String(变量)。
    相比于三种转换方式,推荐第三种转换方法,第三种又称为隐式转换。
    转化为数字型(重点)
    方式、说明、案例
    parselnt(string)函数   将string类型转换为整数数值类型  parselnt("78")(重点)
    parseFloat(string)函数  将string类型转换为浮点数数数值类型  parseFloat("78.12")(重点)
    Number()强制转换函数   将string类型转换为数值类型    Number('12')(仅次于重点)
    js 隐式转换 (-*/)  利用算数运算隐式转换为数值型      '12'- 0
    隐式转换中:+转换为字符串  -*/转换为数字型。
    4.装换为双布尔型
    方式、说明、案例
    Boolean()函数   其他类型转换为布尔型  Boolean("true");
    (1)代表空,否定的值,会被转换为false,如: (空字符串);0;NaN;null;undefined
    (2)其余值都会转换为true.
    
    展开全文
  • JS 数据类型转换

    千次阅读 2018-11-08 11:38:21
    JS数据类型转换 js是弱类型编程语言①声明变量时,不用规定变量存储的数据类型②赋值时,动态决定变量的数据类型,同一个变量先后可保存不同类型的数据③运算时,JS会根据需要,动态转换数据的类型  转换分为两大...

    JS数据类型转换

    js是弱类型编程语言①声明变量时,不用规定变量存储的数据类型②赋值时,动态决定变量的数据类型,同一个变量先后可保存不同类型的数据③运算时,JS会根据需要,动态转换数据的类型 

    转换分为两大类

    (1)隐式转换 :无需程序员干预,JS自动完成的类型转换。在算数运算中一切类型都隐式转换为number类型,在+运算中只要有一方是字符串且+运算变为字符串拼接!true/false-->1/0  true+1 =  2; true+"1"="true1";

    - 运算中  "3"-true = 2; "mmm"-true = NAN(运算中包含了无法转为数字的值,不是数字的数字,NAN和任何东西做计算永远返回NAN)

    表达式:由数据,变量和运算符组成的一个公式,每个表达式默认从左到右,两两计算,每个表达式有且仅有一个运算结果

    (2) 强制转换 :程序员通过主动的调用专门函数,执行转换

    1,toString:注意,不可以转null和underfined

        String()方法:都能转

       注意:隐式转换:num  +  "",当 + 两边一个操作符是字符串类型,一个操作符是其它类型的时候,会先把其它类型转换成字符串再进行字符串拼接,返回字符串

    2,Number():Number()可以把任意值转换成数值,如果要转换的字符串中有一个不是数值的字符,返回NaN,也就是说Number()只能转换纯数字的字符串

    parseInt():从字符串开始位置读取,直到碰到第一个不是数字的字符时,截取。比如parseInt("12px")-----〉12 并且是Number类型

    parseFloat():   parseFloat()把字符串转换成浮点数,从字符串开始位置读取 自动忽略第一个空格,碰到第一个非数字类型的自动截取 或者碰到小数点以后截取到第一个非数字类型的   比如:parseFloat(" 2225tt")----〉2255;parseFloat("  2225 44")---->2255;parseFloat(" 2225.566.77")---->2225.566;

    3,转换为Boolean():0  ''(空字符串) null undefined NaN 会转换成false  其它都会转换成true方法:

     

    展开全文
  • 任意类型转字符串1,String(x)2,x.toString3,x+’ ‘任意类型转数字 ...falsy是在 Boolean 上下文中认定可转换为false的值.JavaScript 在需要用到布尔类型值的上下文中使用强制类型转换(Type Conversio
  • js 数据类型转换

    2020-10-27 10:50:06
    把其他类型转化为Number类型 1.特定需要转换为Number的 + Number([val]) + parseInt/parseFloat([val]) 2.... + isNaN([val]) + 数学运算(特殊情况:+在出现字符...把其他类型转换为数字 Number('') // 0 Number('1.
  • js数据类型转换

    2020-10-18 15:02:06
    数据类型转换 对象:number、Boolean、string、null、undefined和2种复合类型object、array。 转换方式:隐性转换,显性转换。 隐性类型转换 字符之间或者字符跟其他类型之间用了+,就是连接起来,隐转为String....
  • JS中的数据类型转换

    2019-01-02 12:08:06
    由于JS属于弱类型语法,所有的基本数据类型声明都用var,所以当不同类型的数据进行运算的时候就需要进行数据类型转换JS的基本数据类型分为 number,string,null,undefined,boolean,symbol(ES6新增) 不...
  • 一、JS需要类型转换的原因 JS是一种弱类型语言,变量没有类型限制,可以随意赋值。如: var a=5; console.log(typeof a);//number a='我是字符串'; console.log(typeof a);//string如上所示,当把数字5赋值给a...
  • 隐式数据类型转换 所谓隐式类型转换,就是自动转换。这个就不多说了,有过编程经验的人都懂,主要说一下以下几点: 如果数字和空字符串相加,则数字转换成字符串。例如:100+“”=“100”如果对数字连续进行...
  • 数据类型转换分为隐式类型转换和显式类型转换 隐式类型是程序内部自动完成的 显示类型转换是程序员手动完成的 隐式类型转换: JavaScript的取值非常灵活,我们已经从布尔值看到这一点:当JavaScript期望使用一个...
  • 数据类型转换题目

    2017-11-25 12:23:07
    数据类型转换真的有点复杂,要正确理解原理,和区分异同点。
  • 其他数据类型转换数字 1.Number() function fun(){ console.log( Number(null),//==>0 Number(undefined),//==>NaN Number({}),//==>NaN Number([]),//==>0 Number([12]),//==>12 Number(...
  • javascript数据类型转换

    2009-09-07 13:54:00
    parseFloat 转换成浮点数parseInt 转换成整数.这两个函数都有些容错性的,比如"123abc"会变成123.如果希望更准确一些,其实可以判断一下,然后用eval,像这样不过也可以使用这样的方法:var a = "234" ;a = a.replace(/(^...
  • JavaScript数据类型以及数据类型转换基本数据类型字符串型数据数值型数据复合数据类型对象的概念日期对象全局对象数学对象字符串对象数组其他数据类型函数空值不确定型数据类型转换隐式转换显示转换功能快捷键...
  • JavaScript 数据类型转换

    千次阅读 2017-10-10 17:03:47
    数据类型指的就是字面量的类型 在js中一共有六种数据类型 String 字符串 Number 数值 Boolean 布尔值 Null 空值 Undefined 未定义 Object 对象其中String、Number、Boolean、Null、Undefined属于基本数据...
  • javascript数据类型转换

    千次阅读 2015-01-30 11:28:57
    JavaScript是一种动态类型语言,变量是没有类型的,可以随时赋予任意值。...大多数情况下,这种数据类型转换是自动的,但是有时也需要手动强制转换。 1. 强制转换 强制转换主要指使用Number、String和Boole
  • 1. 其他类型 -> String - 变量 + “” - String(变量) (构造函数) - 变量.toString() (undefined 和 null 没有 toString 方法) 2. 其他类型 -> Number 此转换容易出现 NaN,一旦要转换的变量...
  • 将字符串变量值开头的数字转换成整数,如果字符串没有数字,则返回NaN(Not a Number),在转换时可以指定十六、十、八进制,一些转换的范例如表1所示。 表1 parseInt()方法的转换范例 parseInt()函数 值...
  • 转换函数、强制类型转换、利用js变量弱类型转换。 1. 转换函数: js提供了parseInt()和parseFloat()两个转换函数。前者把值转换成整数,后者把值转换成浮点数。只有对String类型调用这些方法,这两个函数才能...
1 2 3 4 5 ... 20
收藏数 228,902
精华内容 91,560
关键字:

js数据类型转换