js

js排序方法总结

余生长醉 提交于 2020-03-28 05:45:03
一、冒泡排序   1.1 普通冒泡排序   function maopaoSort(arr){     for(var i=0,len=arr.length; i<len; i++){       for(var j=0; j<len-1-i; j++){ // 每一次循环结束都会找到最大的数放到数组最后,第一次是把整个数组最大的数放到最后         if(arr[j] > arr[j+1]){           var temp = arr[j+1];           arr[j+1]=arr[j];           arr[j]=temp;         }       }     }     return arr;   }   var arr=[9,23,0,1,345,-3,2,56,79,34,11];   console.log(maopaoSort(arr));   1.2 改进普通版,减少不必要步骤   function maopaoSort2(arr){     var i= arr.length-1;        while(i>0){       var pos = 0; // 每次循环记录最大数交换的位置       for(var j=0;j<i;j++){         if(arr[j] > arr[j+1]){         

JS使png背景图片透明

亡梦爱人 提交于 2020-03-28 03:00:24
png图片有很好的品质,阴影效果也不会有杂边,很流畅。如果插入网页的话可以给网站内容增色不少!更重要的是在不增加图片容量大小的情况下提高了页面的图片的质量。对于有复杂背景,如在有颜色过渡背景上插入不规则边框的图片,带来极大和便利!   但目前IE中对于插入的透明背景的png的图片是不能正常显示的,IE会自动给".png"格式的图片加个灰色背景。解决这个的方法是增加javascript,具体方法有两种:   第一种:把下面的代码放在head区就可以解决问题了。 <script language="javascript"> function correctPNG() { for(var i=0; i<document.images.length; i++) { var img = document.images[i] var imgName = img.src.toUpperCase() if (imgName.substring(imgName.length-3, imgName.length) == "PNG") { var imgID = (img.id) ? "id='" + img.id + "' " : "" var imgClass = (img.className) ? "class='" + img.className + "' " : "" var imgTitle

百度地图经纬度转换JS版

拜拜、爱过 提交于 2020-03-28 02:44:34
//百度地图的坐标转换,由于百度地图在GCJ02协议的基础上又做了一次处理,变为 BD09协议的坐标,以下是坐标的转化方式,可以方便和其他平台转化 jQuery.MapConvert = { x_pi: 3.14159265358979324 * 3000.0 / 180.0, /// <summary> /// 中国正常坐标系GCJ02协议的坐标,转到 百度地图对应的 BD09 协议坐标 /// point 为传入的对象,例如{lat:xxxxx,lng:xxxxx} /// </summary> Convert_GCJ02_To_BD09: function (point) { var x = point.lng, y = point.lat; var z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * jQuery.MapConvert.x_pi); var theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * jQuery.MapConvert.x_pi); point.lng = z * Math.cos(theta) + 0.0065; point.lat = z * Math.sin(theta) + 0.006; }, /// <summary> ///

js 去字符串空格的五种方法

ぐ巨炮叔叔 提交于 2020-03-28 00:20:29
第一种:循环检查替换 [javascript] //供使用者调用 function trim(s){ return trimRight(trimLeft(s)); } //去掉左边的空白 function trimLeft(s){ if(s == null) { return ""; } var whitespace = new String(" \t\n\r"); var str = new String(s); if (whitespace.indexOf(str.charAt(0)) != -1) { var j=0, i = str.length; while (j < i && whitespace.indexOf(str.charAt(j)) != -1){ j++; } str = str.substring(j, i); } return str; } //去掉右边的空白 www.2cto.com function trimRight(s){ if(s == null) return ""; var whitespace = new String(" \t\n\r"); var str = new String(s); if (whitespace.indexOf(str.charAt(str.length-1)) != -1){ var i = str

IE8 js trim函数 去空格函数与正则集锦

。_饼干妹妹 提交于 2020-03-28 00:19:50
在javascript中处理文本框输入值的时候,经常要用到"去掉前后空白"的功能。用过jQuery的朋友都知道,jQuery提供了一个trim()这样的功能函数,可以很轻松帮我们实现这样的效果。 但是如果项目没有用到jQuery等框架的话,js本身又没有这样的函数,我们不得不自己写这样的函数,下面是函数的具体实现: //供使用者调用 function trim(s){ return trimRight(trimLeft(s)); } //去掉左边的空白 function trimLeft(s){ if(s == null) { return ""; } var whitespace = new String(" \t\n\r"); var str = new String(s); if (whitespace.indexOf(str.charAt(0)) != -1) { var j=0, i = str.length; while (j < i && whitespace.indexOf(str.charAt(j)) != -1){ j++; } str = str.substring(j, i); } return str; } //去掉右边的空白 function trimRight(s){ if(s == null) return ""; var whitespace =

JS精美日历时间控件

不羁的心 提交于 2020-03-27 20:52:28
1、完整日历时间控件 <script> var bMoveable=true; var strFrame; document.writeln('<iframe id=endDateLayer frameborder=0 width=162 height=211 style="position: absolute; z-index: 9998; display: none"></iframe>'); strFrame='<style>'; strFrame+='INPUT.button{BORDER-RIGHT: #63A3E9 1px solid;BORDER-TOP: #63A3E9 1px solid;BORDER-LEFT: #63A3E9 1px solid;'; strFrame+='BORDER-BOTTOM: #63A3E9 1px solid;BACKGROUND-COLOR: #63A3E9;font-family:宋体;}'; strFrame+='TD{FONT-SIZE: 9pt;font-family:宋体;}'; strFrame+='</style>'; strFrame+='<scr' + 'ipt>'; strFrame+='var datelayerx,datelayery;'; strFrame+='var bDrag;'; strFrame+

JS es6-Symbol

无人久伴 提交于 2020-03-27 20:11:01
、ES6引入了一种新的原始数据类型Symbol,表示独一无二的值。它是JavaScript语言的第七种数据类型,前六种是:Undefined、Null、布尔值(Boolean)、字符串(String)、数值(Number)、对象(Object)。 2、Symbol值通过 Symbol 函数生成。这就是说,对象的属性名现在可以有两种类型,一种是原来就有的字符串,另一种就是新增的Symbol类型。凡是属性名属于Symbol类型,就都是独一无二的,可以保证不会与其他属性名产生冲突。 3、注意, Symbol 函数前不能使用 new 命令,否则会报错。这是因为生成的Symbol是一个原始类型的值,不是对象。也就是说,由于Symbol值不是对象,所以不能添加属性。基本上,它是一种类似于字符串的数据类型。 Symbol 函数可以接受一个字符串作为参数,表示对Symbol实例的描述,主要是为了在控制台显示,或者转为字符串时,比较容易区分。 4、由于每一个Symbol值都是不相等的,这意味着Symbol值可以作为标识符,用于对象的属性名,就能保证不会出现同名的属性。这对于一个对象由多个模块构成的情况非常有用,能防止某一个键被不小心改写或覆盖。Symbol值作为对象属性名时,不能用点运算符。在对象的内部,使用Symbol值定义属性时,Symbol值必须放在方括号之中。 5、Symbol实例

JS打印

假装没事ソ 提交于 2020-03-27 19:05:57
<html><head><title>javascript打印-打印页面设置-打印预览代码</title> <meta http-equiv=content-type content="text/html; charset=gb2312" /> <script language=javascript> function printsetup(){ // 打印页面设置 wb.execwb(8,1); } function printpreview(){ // 打印页面预览 wb.execwb(7,1); } function printit() { if (confirm('确定打印吗?')) { wb.execwb(6,6) } } </script> </head> <body> <div align=center> <object id=wb height=0 width=0 classid=clsid:8856f961-340a-11d0-a96b-00c04fd705a2 name=wb></object> <input onclick=javascript:printit() type=button value=打印 name=button_print /> <input onclick=javascript:printsetup(); type=button value

js获取当前日期时间“yyyy-MM-dd HH:MM:SS”

守給你的承諾、 提交于 2020-03-27 18:44:33
获取当前的日期时间 格式“yyyy-MM-dd HH:MM:SS” 1 function getNowFormatDate() { 2 var date = new Date(); 3 var seperator1 = "-"; 4 var seperator2 = ":"; 5 var month = date.getMonth() + 1; 6 var strDate = date.getDate(); 7 if (month >= 1 && month <= 9) { 8 month = "0" + month; 9 } 10 if (strDate >= 0 && strDate <= 9) { 11 strDate = "0" + strDate; 12 } 13 var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate 14 + " " + date.getHours() + seperator2 + date.getMinutes() 15 + seperator2 + date.getSeconds(); 16 return currentdate; 17 } 来源: https://www.cnblogs.com/hyywaq/p/6378223.html

VS Code创建 JavaScript 运行环境

依然范特西╮ 提交于 2020-03-27 14:12:15
由于 VS Code 天然支持 JS, 所以上手很简单。 一些插件 coder runner: 本地运行各种代码 color Highlight: 高亮 copy md as HTML: 将 md 转化为 html ES7/ES6: EcmaScript 语法纠错 调试 JS 写好代码后 F5 进入调试,可以看到执行栈/任务队列的信息。 来源: https://www.cnblogs.com/Zbhoter/p/12580488.html