实现最一个整数的质因数的拆分,例如:90可以才分为2*3*3*5,具体代码如下:

<script>
var num = prompt('请输入一个整数:','90');
var regex = new RegExp(/^[0-9]*[1-9][0-9]*$/);
var i = 2;
var handle = num;
var arr = new Array();
while(i<handle){ //i小于num则一直循环下去,直到i=num为止
var result = handle/i;
if(regex.test(result)){ //除2结果为整数
arr.push(i);
i=2;
handle=result;
}else{
i++;
}
if(i == handle-1){ //判断是否要结尾
arr.push(handle)
break;
}
}
//打印结果
var str = String();
for(i=0;i<arr.length;i++){
str += arr[i];
if(i != arr.length-1)
str += '*';
}
alert('可以分解为 :'+str);
</script>

总结:

1.用prompt()函数输入一个数。主要用法是prompt("请输入一个数:","90");
2.采用正则表达式来实现判断整除以后是不是整数,主要用str.test(正则表达式名),如果匹配返回的是true;

3.采用str+=把字符连接起来。

js实现找质因数的更多相关文章

  1. Js中找任意对象的原型方法及改造原型

    Java中有运行时类型识别,js可以很方便的模仿这个特性,因为所有js对象都有一个属性constructor(构造器),表示这个对象的构造方法,原型与构造方法同名,所以可以通过这儿知道任意对象的原型名 ...

  2. 如何使用chrome浏览器进行js调试找出元素绑定的点击事件

    大家有没有遇到这样的一个问题,我们在分析一些大型电子商务平台的Web前端脚本时,想找到一个元素绑定的点击事件,并不是那么容易,因为有些前端脚本封装的比较隐蔽,甚至有些加密脚本,用传统的查找元素ID.或 ...

  3. js中找string中重复项最多的字符个数

    // split():字符串中的方法,把字符串转成数组. // sort():数组中的排序方法,按照ACALL码进行排序. // join():数组中的方法,把数组转换为字符串 function de ...

  4. Node.js如何找npm模板

    首先需要去官网下载npm文件 https://www.npmjs.com/ 下载完成,使用CD查看是否安装完成 然后就是贴代码看npm模板的功能 var _ = require('underscore ...

  5. js方式找出数组中重复数最多的那个数,并返回该数以及重复次数

    function findNum(a){ var result = [0,0]; for (var i = 0; i < a.length; i++) { for (var j = 0,coun ...

  6. JS允许找不到对象 不必判断是否存在某个div

    原文发布时间为:2009-11-10 -- 来源于本人的百度文章 [由搬家工具导入] 加一个try catch 即可。。。。 例子: for(var i=0;i<10;i++)     {    ...

  7. jquery和Js的区别和基础操作

    jqery的语法和js的语法一样,算是把js升级了一下,这两种语法可以一起使用,只不过是用jqery更加方便 一个页面想要使用jqery的话,先要引入一下jqery包,jqery包从网上下一个就可以, ...

  8. A+B Again(在某个数中找大于m的最小约数)

    A+B Again Accepted : 15   Submit : 243 Time Limit : 1000 MS   Memory Limit : 65536 KB  题目描述 上次趣味赛小明的 ...

  9. Js学习笔记一(鼠标事件.....)

    1.encodeURI与decodeURI()转化url为有效的url(能被识别) Url="http://news.baidu.com/p.php?id='测试'&姓名=hkui& ...

随机推荐

  1. 【Linux】使用update-alternatives命令进行版本的切换

    引言 在Redhat中也有此功能,用于切换不同版本. 在Debian系统中,我们可能会同时安装有很多功能类似的程序和可选配置,可能会出现同一软件的多个版本并存的场景.比如像是一些编程语言工具,一些系统 ...

  2. 看完《Thinking in Java》后,我觉得自己就是一个不懂编程的小孩子,如何快速摆脱这种自卑感

    我虽然不懂java也不懂程序员,但我理解这种心情.当看到自己还算自信的专业领域中一部超越自己水平很多的作品或比自己优秀太多的人,难免会感到震惊,继而进行自我否定.就像我曾经非常喜欢写作,在杂志和校报上 ...

  3. matlab 有趣小细节

    图像的默认显示方式,坐标从1开始计数.是从左向右,从上到下为正,分别为x和y轴          如果加入x轴和y轴画成成的格子,起始位置并不是严格的左上角,而是像素的中心点,并不是以像素的边缘画格子 ...

  4. C语言基础(2)-常量

    常量就是在程序运行中不可变化的量. #define #define MAX 100 定义了一个常量名字叫MAX,值是100,用#define定义的常量一般用大写字母. #define是一个预编译指令, ...

  5. loopback文档翻译

    最近在学习loopback,期间在strongloop的官网翻译了部分文章. 见:https://docs.strongloop.com/pages/viewpage.action?pageId=60 ...

  6. 微信5.4安卓版重回ios风格 导航菜单都放底栏位置

    微信5.4安卓版发布更新了,由于本人的手机设置软件自动更新,中午的时候才发现微信换成了5.4版本,启动微信后是一个大大的“转账,就是发消息”,进入微信界面有点小惊喜,导航菜单都改为底部tab方式,顶部 ...

  7. Spring中集合类型属性注入

    我们都知道如何去注入普通属性的值,非常简单,那么我们如何去注入开发中常见的集合类型的属性了,别急,往下看. 这里将介绍如何给Map list set Array Properties 这些属性注入值. ...

  8. 常用mysql语句

    mysql基本知识:日志文件 =======================================开启/关闭日志修改 /etc/my.cnf #log-bin=mysql-bin #重启my ...

  9. django orm字段和参数

    字段 1.models.AutoField 自增列 = int(11) 如果没有的话,默认会生成一个名称为 id 的列,如果要显示的自定义一个自增列,必须将给列设置为主键 primary_key=Tr ...

  10. 深入Nginx

    Nginx功能模块汇总 --with-http_core_module #包括一些核心的http参数配置,对应nginx的配置为http区块部分 --with-http_access_module # ...