JavaScript中的不同逻辑算法结合操作解决实际多重问题以及常用函数类型
数组去重+快速排序
//老数组
var arr1 = [1,2,2,3,8,6,6,4,5,5];
//定义新数组
var arr2 = [ ];
内部可运用布尔型进行判断数组的唯一性
for(i=0;i<arr1.length;i++){
var status = 0;(true)
for(j=0;j<arr2.length;j++){
if(arr1[i]==arr2[j]){
status = 1;(false)
break;
}
} (true)
if(status == 0){
arr2.push(arr1[i]);
}
}
for(i=1;i<arr2.length;i++){
for(j=0;j<arr2.length;j++){
if(arr2[j]>arr2[j+1]){
temp = arr2[j];
arr2[j] = arr2[j+1];
arr2[j+1] = temp;
}
}
}
for(var i in arr2){
document.write(arr2[i]);
}
逻辑是现将原数组与定义的新数组进行循环对比去除重复元素,再将原数组剩余元素推入新数组;最后对新数组里面的元素进行有序排列;此两种算法结合操作实现数组的去重+自行排序的双重解决方案。
日期时间函数
var z = new Date();//获取当前时间
var s = z.getTime();//获取时间戳
var s = z.getFullYear();//获取年份
var s = z.getMonth()+1;//获取月份
var s = z.getDate();//获取天
var s = z.getHours();//获取小时
var s = z.getMinutes();//获取分钟
var s = z.getSeconds();//获取秒数
var s = Date();//获取完整日期
document.write(s);
数学函数
var s = -10;
var z = Math.abs(s);返回数的绝对值
document.write(z);
var s = -10.5;
var z = Math.ceil(s);对数进行上舍入
var z = Math.floor(s);对数进行下舍入
var z = Math.round(s);把数四舍五入为最接近的整数
var z = Math.max(4,5);返回 x 和 y 中的最高值
var z = Math.min(1,8);返回 x 和 y 中的最低值
var z = Math.pow(2,3);返回 x 的 y 次幂
var z = Math.sqrt(16);返回数的平方根
var z = Math.random();返回 0 ~ 1 之间的随机数(常用)
document.write(z);
字符串函数
var str = "dgrcsfr";
var s = str.indexOf("s");输出索引位置
var s = str.charAt(5);
var s = str.lastIndexOf("r");输出最后一个相同字符位置
//从索引位置起找四个(常用)
var s = str.substr(1,5);
var s = str.substring(1,5);
var s = str.replace("dgr","ABC");
document.write(s);
JavaScript中的不同逻辑算法结合操作解决实际多重问题以及常用函数类型的更多相关文章
- 使用 JavaScript 中的 window 对象执行计时操作,完成一个抽奖程序
查看本章节 查看作业目录 需求说明: 使用 JavaScript 中的 window 对象执行计时操作,完成一个抽奖程序 实现思路: 在 HTML 页面中放置背景图片.转盘和指针 3 张图片,并设置指 ...
- javaScript中利用ActiveXObject来创建FileSystemObject操作文件
注:如果用javascript读本地文件,遇到安全问题. 需在浏览器中进行设置,如下: 工具—> Internet选项->安全->自定义级别->启用“没有标识为安全的A ...
- JavaScript中使用JSON,即JS操作JSON总结
JSON(JavaScript Object Notation 对象标记) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是 JavaScript 原生 ...
- scikitlearn库中调用k-近邻算法的操作步骤
1.k近邻算法可以说是唯一一个没有训练过程的机器学习算法,它含有训练基础数据集,但是是一种没有模型的算法,为了将其和其他算法进行统一,我们把它的训练数据集当做它的模型本身.2.在scikitlearn ...
- 7.打开文件、文件读写操作、with方式、文件常用函数
打开文件: 在python3中,打开文件的函数是: open(file, mode='r', buffering=None, encoding=None, errors=None, newline=N ...
- JavaScript中的二分法插入算法
算法主体部分 var OnlineUser = { //list : 待查找的数组 //key : 待插入的值 //order : 数组的顺序 1:从小到大 0:从大到小 //start : 开始查找 ...
- javascript中的装箱和拆箱操作
1,装箱: 把基本数据类型转换为对应的引用类型的操作称为装箱,把引用类型转换为基本的数据类型称为拆箱. 在<javascript高级程序设计>中有这样一句话: 每当读取一个基本类型的时候, ...
- Javascript 中的一些关于时间的操作【转】
1.时间对象和一些简单操作函数 var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); ...
- JavaScript中的栈及通过栈操作的实例
<script> /*栈操作*/ function Stack() { this.dataStore = []; this.top = 0; this.push = push; this. ...
随机推荐
- CentOS升级Python到2.7版本
查看python的版本 1 python -V Python 2.4.3 1.先安装GCC 1 yum -y install gcc 2.下载Python-2.7.2 1 wget http://py ...
- Jenkins的安装配置
Jenkins的安装配置 一.Jenkins简介 Jenkins 是一个可扩展的持续集成引擎.Jenkins可以帮我们将代码进行统一的编译打包.还可以放到tomcat容器中进行发布.简单来说就是我们通 ...
- 【干货】JS相关知识点总结
一.获取元素方法 可以使用内置对象document上的getElementById方法来获取页面上设置了id属性的元素,获取到的是一个html对象,然后将它赋值给一个变量.如下: 上面的语句,如果把j ...
- 简单介绍Struts2
Struts2概述 Struts2虽然是Struts1的基础上发展起来的,但是实质上是以WebWork框架为核心,为传统的Struts1注入了WebWork的设计理念,统一了Struts1和WebWo ...
- JDK动态代理源码学习
继上一篇博客设计模式之代理模式学习之后http://blog.csdn.net/u014427391/article/details/75115928,本博客介绍JDK动态代理的实现原理,学习一下JD ...
- 51nod_1490: 多重游戏(树上博弈)
题目链接 该题实质上是一个树上博弈的问题.要定义四种状态--2先手必胜 1先手必败 3可输可赢 0不能控制 叶子结点为先手必胜态: 若某结点的所有儿子都是先手必败态,则该结点为先手必胜态: 若某结点的 ...
- [luogu P2184] 贪婪大陆 [树状数组][线段树]
题目背景 面对蚂蚁们的疯狂进攻,小FF的Tower defence宣告失败……人类被蚂蚁们逼到了Greed Island上的一个海湾.现在,小FF的后方是一望无际的大海, 前方是变异了的超级蚂蚁. 小 ...
- vs2015数据驱动的单元测试
今天在做测试的时候boss让我这个菜鸟做vs2015下c#的单元测试,并且给了我参考http://www.cnblogs.com/kingmoon/archive/2011/05/13/2045278 ...
- (转)java中对集合对象list的几种循环访问总结
Java集合的Stack.Queue.Map的遍历 在集合操作中,常常离不开对集合的遍历,对集合遍历一般来说一个foreach就搞定了,但是,对于Stack.Queue.Map类型的遍历,还是有一 ...
- 【SignalR学习系列】8. SignalR Hubs Api 详解(.Net C# 客户端)
建立一个 SignalR 连接 var hubConnection = new HubConnection("http://www.contoso.com/"); IHubProx ...