how2j.cn


工具版本兼容问题
JavaScript中的对象是有着属性和方法的一种特殊数据类型。

常见的对象有数字Number,字符串String,日期Date,数组Array等。

本章节从数字对象开始讲起

注: 这里讲的Number是对象Number,基本数据类型中的基本类型Number是不一样的Number。

关键字 简介 示例代码
new Number
创建一个数字对象
示例代码
属性MIN_VALUE
属性MAX_VALUE
最小值 最大值
示例代码
属性NaN
表示不是数字
示例代码
方法toFixed
返回一个数字的小数表达
示例代码
方法toExponential
返回一个数字的科学计数法表达
示例代码
方法valueOf
返回一个数字对象的基本数字类型
示例代码
练习-乘法
示例代码
答案-乘法
示例代码
示例 1 : 创建一个数字对象   
示例 2 : 最小值 最大值   
示例 3 : 表示不是数字   
示例 4 : 返回一个数字的小数表达   
示例 5 : 返回一个数字的科学计数法表达   
示例 6 : 返回一个数字对象的基本数字类型   
示例 7 : 练习-乘法   
示例 8 : 答案-乘法   

示例 1 :

创建一个数字对象

可以通过new Number()创建一个数字对象

与基本类型的数字不同,对象类型的数字,拥有更多的属性和方法
接下来就会讲解各种属性和方法
运行效果
<script> var x = new Number(123); document.write('数字对象x的值:'+x); document.write("<br>"); document.write('数字对象x的类型:'+typeof x); //通过typeof 获知这是一个object document.write("<br>"); var y = 123; document.write('基本类型y的值:'+y); document.write("<br>"); document.write('基本类型y的类型:'+typeof y); //通过typeof 获知这是一个number </script>
<script>

var x = new Number(123);
 document.write('数字对象x的值:'+x);
 document.write("<br>");
 document.write('数字对象x的类型:'+typeof x); //通过typeof 获知这是一个object
 document.write("<br>");
var y = 123;
 document.write('基本类型y的值:'+y);
 document.write("<br>");
 document.write('基本类型y的类型:'+typeof y); //通过typeof 获知这是一个number

</script>


源代码
1. 双击选中单词 2. 三击选中整行 3. CTRL+F 查找 4. F8 全屏编辑,再次点击恢复
渲染中 渲染完成
效果
示例 2 :

最小值 最大值

Number对象能够取到的最大和最小边界
运行效果
<script> document.write('Number对象的最小值:'+Number.MIN_VALUE); document.write("<br>"); document.write('Number对象的最大值:'+Number.MAX_VALUE); </script>
<script>

 document.write('Number对象的最小值:'+Number.MIN_VALUE);

 document.write("<br>");

 document.write('Number对象的最大值:'+Number.MAX_VALUE);

</script>


源代码
1. 双击选中单词 2. 三击选中整行 3. CTRL+F 查找 4. F8 全屏编辑,再次点击恢复
渲染中 渲染完成
效果
示例 3 :

表示不是数字

NaN(Not a Number),表示不是一个数字
当通过非数字创建Number的时候,就会得到NaN.
注意: 不能通过 是否等于Number.NaN来判断 是否 “不是一个数字”,应该使用函数 isNaN()
运行效果
<script> function p(s){ document.write(s); document.write("<br>"); } var a = new Number("123abc"); //通过非数字创建Number对象,得到的是一个NaN p('通过非数字字符串"123abc"创建出来的Number对象 a的值是:'+a); p('但是, a==Number.NaN会返回:'+(a==Number.NaN)); //即便是一个NaN 也"不等于" Number.NaN p('正确判断是否是NaN的方式是调用isNaN函数:'+isNaN(a)); //正确的方式是通过isNaN() 函数进行判断 </script>
<script>
function p(s){
  document.write(s);
  document.write("<br>");
}

var a = new Number("123abc"); //通过非数字创建Number对象,得到的是一个NaN
p('通过非数字字符串"123abc"创建出来的Number对象 a的值是:'+a);

p('但是, a==Number.NaN会返回:'+(a==Number.NaN)); //即便是一个NaN 也"不等于" Number.NaN

p('正确判断是否是NaN的方式是调用isNaN函数:'+isNaN(a)); //正确的方式是通过isNaN() 函数进行判断

</script>


源代码
1. 双击选中单词 2. 三击选中整行 3. CTRL+F 查找 4. F8 全屏编辑,再次点击恢复
渲染中 渲染完成
效果
示例 4 :

返回一个数字的小数表达

toFixed返回一个数字的小数表达
运行效果
<script> function p(s){ document.write(s); document.write("<br>"); } var a = new Number("123"); p("数字对象123通过toFixed(2) 保留两位小数:"+a.toFixed(2)); //保留两位小数点 var b = new Number("3.1415926"); p("PI 通过toFixed(3) 保留三位小数:"+b.toFixed(3));//保留三位小数点 </script>
<script>
function p(s){
  document.write(s);
  document.write("<br>");
}

var a = new Number("123"); 

p("数字对象123通过toFixed(2) 保留两位小数:"+a.toFixed(2)); //保留两位小数点

var b = new Number("3.1415926"); 

p("PI 通过toFixed(3) 保留三位小数:"+b.toFixed(3));//保留三位小数点

</script>



源代码
1. 双击选中单词 2. 三击选中整行 3. CTRL+F 查找 4. F8 全屏编辑,再次点击恢复
渲染中 渲染完成
效果
示例 5 :

返回一个数字的科学计数法表达

返回一个Number对象的科学计数法表达
运行效果
<script> function p(s){ document.write(s); document.write("<br>"); } var a = new Number("123"); p("数字对象123通过toExponential 返回计数法表达 "+a.toExponential ()); var b = new Number("3.1415926"); p("数字对象3.1415926通过toExponential 返回计数法表达 "+b.toExponential ()); </script>
<script>
function p(s){
  document.write(s);
  document.write("<br>");
}
 
var a = new Number("123"); 
 
p("数字对象123通过toExponential 返回计数法表达 "+a.toExponential ()); 
 
var b = new Number("3.1415926"); 
 
p("数字对象3.1415926通过toExponential 返回计数法表达 "+b.toExponential ());
 
</script>


源代码
1. 双击选中单词 2. 三击选中整行 3. CTRL+F 查找 4. F8 全屏编辑,再次点击恢复
渲染中 渲染完成
效果
示例 6 :

返回一个数字对象的基本数字类型

方法 valueOf() 返回一个基本类型的数字
通过typeof 判断数据类型可以发现,一种是object,一种是number
运行效果
<script> function p(s){ document.write(s); document.write("<br>"); } var a = new Number("123"); var b = a.valueOf(); p('数字对象a的类型是: '+typeof a); //返回object p('通过valueOf()返回的值的类型是'+typeof b); //返回number </script>
<script>
function p(s){
  document.write(s);
  document.write("<br>");
}

var a = new Number("123"); 

var b = a.valueOf();

p('数字对象a的类型是: '+typeof a); //返回object
p('通过valueOf()返回的值的类型是'+typeof b); //返回number

</script>



源代码
1. 双击选中单词 2. 三击选中整行 3. CTRL+F 查找 4. F8 全屏编辑,再次点击恢复
渲染中 渲染完成
效果
示例 7 :

练习-乘法

Or  姿势不对,事倍功半! 点击查看做练习的正确姿势
参考阶段性练习1的做法,做一个乘法计算器,但是要求输出结果是科学计数法表示
练习-乘法
示例 8 :

答案-乘法

在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
运行效果
<head> <meta http-equiv="Content-Type" content="text/html; charset=GB2312"> </head> <style> input{ width:50px; } </style> <script> function calc(){ var num1= document.getElementById("num1").value; var num2= document.getElementById("num2").value; num1 = parseFloat(num1); num2 = parseFloat(num2); var result = num1*num2; var num = new Number(result); document.getElementById("result").value=num.toExponential(); } </script> <input type="text" id="num1"> * <input type="text" id="num2" > = <input type="text" id="result" > <input type="button" value="运算" onclick="calc()">


源代码
1. 双击选中单词 2. 三击选中整行 3. CTRL+F 查找 4. F8 全屏编辑,再次点击恢复
渲染中 渲染完成
效果


HOW2J公众号,关注后实时获知布最新的教程和优惠活动,谢谢。


问答区域    
2018-08-06 交作业
神乐



1
<script language="javascript">
	function get(){
		var x=document.getElementById("a1").value;
		var x1=parseInt(x);
		var y=document.getElementById("a2").value;
		var y1=parseInt(y);
		var jg=x1*y1;
		var num=new Number(jg);
		document.getElementById("a3").value=num.toExponential();
		}
</script>
</head>

<body>
<table>
	<tr>
    <td><input type="text" id="a1" size="5" />*</td>
    <td><input type="text" id="a2" size="5" />=</td>
    <td><input type="text" id="a3" size="5" /></td>
    <td><input type="button" id="a4" value="运算" onclick="get();" /></td>
    </tr>
</table>
</body>

							






答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2018-05-14 简答
分身b



符合逻辑
<style>
    .ys{
        width: 50;
        background-color:lightgray;
        border: 1px solid darkgray;
    }
</style>
<script>
    function get(){
    var a=document.getElementById("a").value;
    var b=document.getElementById("b").value;
    var c=parseInt(a)*parseInt(b);
    document.getElementById("c").value=c.toExponential();
        }
</script>

<input type="text" class="ys" id="a">
<span>*</span>
<input type="text" class="ys" id="b">
<span>=</span>
<input type="text" class="ys" id="c">
<button onclick="get()">运算</button>

							






答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2018-03-10 交作业
2017-08-30 这样为什么不行




提问之前请登陆
关于 前端部分-JavaScript-数字 的提问

尽量提供截图代码异常信息,有助于分析和解决问题。 也可进本站QQ群交流: 620943819
提问尽量提供完整的代码,环境描述,越是有利于问题的重现,您的问题越能更快得到解答。
对教程中代码有疑问,请提供是哪个步骤,哪一行有疑问,这样便于快速定位问题,提高问题得到解答的速度
在已经存在的几千个提问里,有相当大的比例,是因为使用了和站长不同版本的开发环境导致的,比如 jdk, eclpise, idea, mysql,tomcat 等等软件的版本不一致。
请使用和站长一样的版本,可以节约自己大量的学习时间。 站长把教学中用的软件版本整理了,都统一放在了这里, 方便大家下载: http://how2j.cn/k/helloworld/helloworld-version/1718.html

上传截图