6.1 string → number

先来学习一个语句,这个语句和alert差不多,也是弹窗,弹的是输入框:

1    prompt("请输入你的电话","139");

这些小功能,就叫做程序给我们提供的API,每个API都有自己不同的语法。

1    prompt(“提示文本”,”默认值”);

默认值可以省略。

可以把用户输入的值,存入变量:

1    var a = prompt("请输入你的电话","139");

2    alert("哈哈,你输入的电话是" + a);

用prompt接收的任何东西都是字符串,哪怕用户输入了一个数字,也是字符串的数字。

好了,下面附上代码

prompt的样子

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Document</title>
<script type="text/javascript">
// 输入框
// 第一步先让输入电话号码,存入变量
// var a = prompt("请输入你的电话","139");
// //第二步显示用户输入的电话
// alert("哈哈,你输入的电话是" + a); //计算器
//第1步让用户先输入第1个数字
var a = prompt("请输入第1个数字啊");
//第2步让用户先输入第2个数字
var b = prompt("请输入第2个数字啊啊");
//第3步求和
var sum = parseFloat(a) + parseFloat(b);
//第4步弹出结果
alert(sum);
</script>
</head>
<body> </body>
</html>

有一些方法可以将内存中表示一个数字的字符串转换为对应的数字

parseInt()和parseFloat()。

parseInt就是将一个string转为一个整数,不四舍五入,直接截取整数部分。如果这个string有乱七八糟的东西,那么就截取前面数字部分。

1           var a = "123";

2           var b = parseInt(a);  //parseInt就把字符串123转为数字123

3           console.log(b);

4           console.log(typeof b);

下面的实例结果都是123,最后一个是-123:

1    parseInt("123")   //123

2    parseInt("123.6") //123

3    parseInt("123年都会很爱你")  //123

4    parseInt("123年11月")       //123

5    parseInt("123px")     //123

6    parseInt("-123.99999999") //-123

parseInt()不仅仅能够进行一个转为整数,更能进行一个进制的转换,把任何进制的数字,都换为10进制

进制和要转换的字符串,用逗号隔开。

下面的运算结果都是15:

1           parseInt(15,10)

2           parseInt(17,8)

3           parseInt(1111,2)

4           parseInt("0xf",16)

5           parseInt("f",16)

6           parseInt(16,9)

7           parseInt("15e6",10)

8           parseInt("15*6",10)

parseInt如果不能转,那么就返回NaN

1    parseInt("Hello", 8);

2    parseInt("546", 2);

3    parseInt("三百六十五");

得到NaN的方法又多了一种,上午讲的是6/0得到Infinity。0/0得到NaN。

parseInt的样子

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Document</title>
<script type="text/javascript">
// var a = "123";
// var b = parseInt(a); //parseInt就把字符串123转为数字123了
// console.log(b);
// console.log(typeof b); // console.log(parseInt("123")); //123
// console.log(parseInt("123.6")); //123
// console.log(parseInt("123年都会很爱你")); //123
// console.log(parseInt("123年11月")); //123
// console.log(parseInt("123px")); //123
// console.log(parseInt("-123.99999999")); //-123 // 下面的结果都是15
// console.log(parseInt(15,10));
// console.log(parseInt(17,8));
// console.log(parseInt(1111,2));
// console.log(parseInt("0xf",16));
// console.log(parseInt("f",16));
// console.log(parseInt(16,9));
// console.log(parseInt("15e6",10));
// console.log(parseInt("15*6",10)); //NaN
console.log(parseInt("三百六十五"));
</script>
</head>
<body> </body>
</html>

parseFloat就是将字符串转为浮点数

尽可能的将一个字符串转为浮点数,浮点数之后如果有乱七八糟的内容,直接舍弃。

1        <script type="text/javascript">

2           var a = "123.67.88";

3           var b = parseFloat(a);

4           console.log(b);

5        </script>

也就是说,数字类型都是number,不分整数和浮点数,但是转换的时候分。

parseFloat的样子

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Document</title>
<script type="text/javascript">
// var a = "123.67.88";
// var b = parseFloat(a);
// console.log(b); console.log(parseFloat("123.67年")); //123.67
console.log(parseFloat("哈哈123.67年")); //NaN </script>
</head>
<body> </body>
</html>

5.2 number →
string

将一个数字,与一个空字符串进行连字符运算,那么就是自动转为字符串了。

1           var a = 123;

2           var b = a +
""
;

3           console.log(b);

4           console.log(typeof b);

转型的样子

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Document</title>
<script type="text/javascript">
var a = 123;
var b = a + "";
console.log(b);
console.log(typeof b);
</script>
</head>
<body> </body>
</html>

over,next!

前端-JavaScript1-6——JavaScript之变量类型的转换的更多相关文章

  1. javascript数据类型及类型的转换总结

    javascript 是浏览器客户端脚本语言,要想让网页与后台程序更好的交互效果,这里我们详细了解javascript 数据类型及类型的转换 1,数据类型 number number类型 数字类型,浮 ...

  2. Javascript声明变量类型

    声明变量类型 当您声明新变量时,可以使用关键词 "new" 来声明其类型: var carname=new String; var x= new Number; var y= ne ...

  3. Javascript 判断变量类型的陷阱 与 正确的处理方式

    Javascript 由于各种各样的原因,在判断一个变量的数据类型方面一直存在着一些问题,其中最典型的问题恐怕就是 typeof null 会返回 object 了吧.因此在这里简单的总结一下判断数据 ...

  4. javascript显式类型的转换

    显式类型转换目的:为了使代码变得清晰易读,而做显示类型的转换常使用的函数:Boolean(),String(),Number()或Object()如:Nunber(5) //5String(true) ...

  5. 对JavaScript中变量类型的重新理解

    <JavaScript启示录>这本书中提出:JavaScript中,对象为“王”(JavaScript里的几乎所有东西都是对象或者用起来像对象). 飞燕草对JavaScript最深刻的理解 ...

  6. JavaScript判断变量类型

    使用JavaScript变量时是无法判断出一个变量是0 还是“”的 这时可用typeof()来判断变量是string 还是number来区分0和“”, typeof(undefined) == 'un ...

  7. 在JavaScript中也玩变量类型强行转换

    <script language="javascript">     var str = '100';     var num = Number(100);     a ...

  8. javascript的变量类型:var、let、const

    不同点:可变性,与作用域的关系. 可变性:const定义的变量都不可变,而var和let可以任意更改. const 只能在声明时被初始化一次,之后不允许将全新的值赋值给const变量.但可以修改con ...

  9. JavaScript各变量类型的判断方法

    我们很容易被漂亮的代码吸引,也不知不觉的在自己的代码库中加入这些.却没有冷静的想过它们的优劣.这不,我就收集了一系列形如 "是否为……?" 的判断的boolean函数. isNul ...

随机推荐

  1. 『Numpy』内存分析_numpy.dtype解析内存数据

    numpy.dtype用于自定义数据类型,实际是指导python程序存取内存数据时的解析方式. [注意],更改格式不能使用 array.dtype=int32 这样的硬性更改,会不改变内存直接该边解析 ...

  2. 『TensorFlow』读书笔记_VGGNet

    VGGNet网络介绍 VGG系列结构图, 『cs231n』卷积神经网络工程实践技巧_下 1,全部使用3*3的卷积核和2*2的池化核,通过不断加深网络结构来提升性能. 所有卷积层都是同样大小的filte ...

  3. pyqt小例子

    from PyQt5 import QtCore, QtGui, QtWidgets from PyQt5.QtWidgets import QApplication, QMainWindow imp ...

  4. 在云服务器跑Python程序

    最近在鼓弄这TensorFlow的模型,有些模型实在是太大了,CPU占用率100%不说,还一跑起来就跑个大半天,严重影响了学习的进度,所以由于手里刚有一个不大使用的云服务器,配置虽然不咋地,至少还能跑 ...

  5. mysql装完计算机管理里面没mysql服务怎么解决(转)

    mysql装完计算机管理里面没mysql服务怎么解决 2017年07月04日 09:32:51 XC_Echizen 阅读数:7335 标签: mysql计算机mysql服务找不到mysql服务 更多 ...

  6. Java语法基础学习DaySixteen(多线程)

    一.多线程的创建 1.作用 程序需要同时执行两个或多个任务时需要多线程. 程序需要实现需要等待的任务时,如用户输入.文件读写操作.网络操作.搜索等,需要多线程. 需要一些后台运行的程序时,需要多线程. ...

  7. python基础09_字符串格式化

    首先,使用%s 的方法. #!/usr/bin/env python # coding:utf-8 # 不用format方法,使用%s 和%d name = 'Tom' age = 100 msg = ...

  8. Python 进程池的同步方法和异步方法

    import time from multiprocessing import Process,Pool def f1(n): time.sleep(0.5) # print(n) return n* ...

  9. swap 用指针交换两个整型数值

  10. springmvc简单集成shiro

    前言: 有天和同事聊天, 谈起权限管理, 他说他有个同事用shiro用的很溜. 正好现在有个管理平台项目, 有权限控制的需求, 因此想借此机会研究一番. 本文主要简单讲解一下对shiro的一些认识, ...