JS 得细心的坑位】的更多相关文章

<script> function test(link) { link = link || 'none'; alert(link); } function test2(){ var link = ''; if(link){ alert(1); }else{ alert(2);//2 } } test2(); test('')//弹出none </script> if判断空字符串是没有,所以弹出2 if(link=="") 就弹出1…
js保留小数点后N位的方法介绍 利用toFixed函数 代码如下 复制代码 <script language="javascript"> document.write("<h1>JS保留两位小数例子</h1><br>"); var a=2.1512131231231321; document.write("原来的值:"+a+"<br>"); document.writ…
问题:在JS中格式化数据保留两位小数的函数的多种方法 最好方法: 保留两位好像是这样吧     var   a   =   9.39393;     alert(a.toFixed(2)); 说明: alert(Number.toFixed(9.39393));     返回的是9.39     但是只有ie5.5以上的版本才支持. 其它方法: 方法一: function   roundFun(numberRound,roundDigit)   //四舍五入,保留位数为roundDigit   …
  CreateTime--2017年8月23日11:03:31Author:Marydon js设置百分比保留两位小数 错误用法: var percent = (num1/num2) * 100%; 正确用法: var percent = Math.round(num1/num2 * 10000) / 100 + "%"; 说明: 1.Math.round(num)表示对num进行四舍五入操作,只保留整数位,如num=0.49,返回结果为0:如num=0.51,返回结果为1: 2.将…
引言 看过前文的博友可能注意到我是把 部署dll文件拷贝到生产机器,之后在生产机器上使用docker-compose即时创建镜像, 并没有完成CI/CD, 只是在原来传统部署方式下 将部署文件容器化. 经过长时间实操验证,终于完成基于Gitlab的CI/CD实践,本次实践的坑位很多, 实操的过程尽量接近 最佳实践(不做hack, 不做骚操作),记录下来也方便自己加深理解. 第一部分: Gitlab CI/CD 原理 和 Gitlab Runner 安装(这里使用shell执行器) 第二部分: G…
http是我们最常见的客户端/服务端传输协议,在golang中,默认的net/http包有一些坑位,需要调整以获得更加性能. 在golang程序中,我也遇到因为不合理使用 http client导致的程序崩溃问题. 坑:1:默认的HttpClient 默认的HttpClient不包含请求超时时间,如果你使用http.Get(url)或者&Client{}, 这将会使用http.DefaultClient,这个结构体内no timeout. 假如发出请求的服务端API有问题:没有及时响应httpc…
在做项目的时候,无意发现了一个小东西. new Date('2018-05-15') new Date('2018-5-15') 输出的结果是不同的,相差了8小时.然后让我回忆到之前看的一个时间转换函数,把-替换成/.于是,我把它替换了一下.问题就解决了,返回的就是相同的时间.所以可以简单地得出一个结论: 其实不关是否加了0的问题 把-替换成/,可以躲过这个坑 本来这个日记已经完结,我没死心又跑去MDN找了Date对象的知识.其中有一个写着new Date(dateString),接着,我们看到…
前2天,做一个手机网页的微信支付的项目,费了好些周折,记录一下.接下来,按照开发步骤,细数一下,我遇到的那些坑. [坑1]官方邮件中下载的demo只有PHP版本,其他版本没有给链接.可能让人误以为只有PHP版本,事实上,各种版本都有. 拿到了腾讯发给客户的,微信支付商户资料,邮件中提示:证书的详细使用方案,请查看微信支付开发接口文档.根据邮件微信支付开发接口文档的链接,定向到一个新的邮件附件,里面的内容: 3. 使用公众号发起支付请求 使用JS API在微信的网页中发起支付请求,详细方法见文档中…
前2天,做一个手机网页的微信支付的项目,费了好些周折,记录一下.接下来,按照开发步骤,细数一下,我遇到的那些坑. [坑1]官方邮件中下载的demo只有PHP版本,其他版本没有给链接.可能让人误以为只有PHP版本,事实上,各种版本都有. 拿到了腾讯发给客户的,微信支付商户资料,邮件中提示:证书的详细使用方案,请查看微信支付开发接口文档.根据邮件微信支付开发接口文档的链接,定向到一个新的邮件附件,里面的内容: 3. 使用公众号发起支付请求 使用JS API在微信的网页中发起支付请求,详细方法见文档中…
require.js的使用心德: 都是自我的理解所得: first:为什么使用? 1,web开发js的占用比例越来越大,引入的插件也越来越多,维护困难,一个一个的script的写要废 2,模块开发的需求 3,有时候javascript的运用是有依赖的需求的,大量的使用难以保证依赖顺序,出现不存在的问题 second:这是个坑,使用前的提示: 使用的环境是服务器的web环境,单纯的没有服务器的静态页面使用根本没有反应! [][][]还有最重要的一点是,所有的路径,出了加/的,若是寻相对路径,都是以…
从一个原生HTML/CSS/JS模式的网页改造到ReactJS模块化的结构,需要以下步骤: (1)引用ReactJS框架 ->(2)使用webpack 工具 -> (3)配置webpack使之识别各种语法:JAX,HTML,CSS等 以下是一些坑: 1.ReactJS框架并不能实现JS的模块化 纯ReactJS其实和JqueryTemplate差不多,可以把HTML写成一个模板,然后以插入到某个DIV里的方式来实现HTML的模板化. 但是单纯靠ReactJS这个框架,其实这并没有实现JS的模块…
截取小数点后几位的方法有很多,下面为大家介绍下使用js是如何实现的 如果${showInfo.tt}的值为20,要要它除以10以后精确到小数点后2位,那么js代码中可作如下写法:  复制代码 代码如下: //by www.jbxue.com var a = ${showInfo.tt}/10;  //alert(a.toFixed(3)); //表示到小数点后3位得出的值为2.000  document.write(a.toFixed(2)); //得出的值为2.00 …
前面说了说了js的相关知识,基本上除了语法外,把项目常用的知识做了一个梳理,现在说下js的其它方面的知识,这些知识不成体系,属于不理解对于一般开发没什么太多影响,但如果理解清楚,可以更好去开发. js解析引擎: 引擎的定义: 什么是js解析引擎?简单的说是就能够读懂javascript代码的的平台,如你写一段代码 var a=1;var b=1;var c=a+b;引擎做的事情就这一段代码执行成我们想要的结果,这就是引擎要做的事情. 上面据说的和C/C中的编译过程很像,但是js和C/C有所不同,…
本篇文章是本人在网上搜集了一些验证,然后又个人进行一定修改的关于身份证的验证,欢迎修改指正..... function IdCardValidateRule(idCard) { var tip;    //1.传入15位或者18位身份证号码,18位号码末位可以为数字或X    idCard = idCard.toUpperCase();    //2.去掉身份证的左右空格    idCard = trim(idCard);    //3.判断输入的身份证长度    if (!(/(^\d{15}…
javascript中的数字都是双精度的浮点数. JavaScript中的整数并不是一个独立的数据类型,而是浮点数的一个子集. 浮点数的坑我们看下面的例子 在浏览器的console 控制台上我们分别进行以下的浮点数运算 通过控制台的运算,我们可以很惊奇的看到答案,有些运算结果竟然和我们想像的不一样,比如0.1+0.2的返回结果不是0.3,而是0.30000000000000004. 这究竟是啥原因?1,首先要肯定的是这不是浏览器的问题,而是由于浮点数的精度导致的.2,浮点数的精度问题并不是Jav…
原文地址: http://www.jb51.net/article/45884.htm 四舍五入以下处理结果会四舍五入: ? 1 2 var num =2.446242342; num = num.toFixed(2); // 输出结果为 2.45 不四舍五入以下处理结果不会四舍五入:第一种,先把小数边整数: ? 1 2 Math.floor(15.7784514000 * 100) / 100  // 输出结果为 15.77 第二种,当作字符串,使用正则匹配: ? 1 2 Number(15.…
一:DOM对象的查找 DOM的查找到的对象,除byID的之外,返回的都是一个数组,并不是DOM对象无法调用DOM对象的方法. 通过id查找: 因为id在一个HTML文件中唯一,因此查找到的只会是一个元素对象以数组形式(对象,)返回.直接就把对象赋值给变量了. var dEle = document.getElementById('d1') <div id=​"d1" class=​"left">​…​</div>​ dEle.style.co…
格式化数字保留两位小数点实现的方法有很多,在接下来的文章中将为大家详细介绍下如何使用js来实现 a = a.toFixed(2);//保留2位但结果为一个String类型 a = parseFloat(a);//将结果转换会float //用一步的话如下 a = parseFloat(a.toFixed(2)); …
js判断是否64位 浏览器 navigator.userAgent.match(/x64/i);…
本文原链接:https://www.jianshu.com/p/928c68f92c0c JavaScript实现千位分隔符 将普通的数字转换为带千位分隔符格式的数字字符串是一个非常常见的问题,千位分隔符格式的规则是数字的整数部分每三位一组,以“,”分节.小数部分不分节 .示例:19,351,235.235767这里有几个常见的实现方法. 1.方法一 实现思路是将数字转换为字符数组,再循环整个数组, 每三位添加一个分隔逗号,最后再合并成字符串.因为分隔符在顺序上是从后往前添加的:比如 12345…
在JS中,一般实现保留小数点后N位的话,都是利用toFixed函数 <script language="javascript"> document.write("<h1>JS保留两位小数例子</h1><br>"); var a=2.1512131231231321; document.write("原来的值:"+a+"<br>"); document.write(&q…
js实现18位数字 var stuCardReg = /^[0-9]{18}/; var stuCard = $('.inp).val();//获取input框中的数值 if (!stuCardReg.test(stuCard)) { alert('格式不正确'); }…
前言(背景介绍) 开发的项目需要与Threejs的3D项目结合在一起,需要静态引入,jquery.js,stats.js,three.js,ThreeBSP.js等静态文件.开发环境是iview-admin2.0.尝试了许多方法,算是填坑了吧.... 1.首先找到项目下的index.html,我的是在public下.如图 2.接着将你要引入的js文件写在index.html里面 tip:1.js文件要放在public下,其他目录无法引用成功.目录的跳级规则还没有找到,与普通跳级方式不同. 2.p…
在小数相加时,可能会产生多个小数位.如下所示: var x=1+1;   //2 var x=1.20+1.11;   //2.31 var x=1.56+1.76;   //3.3200000000000003 导致上述原因是因为Javascript的数字类型是以64位的IEEE 754格式存储的.在用的时候一定要小心,测试要到位. 解决方法: 加上toFixed()函数就可以把函数控制在想要的小数位以内,具体语法如下: var x=1+1;   //2 var x=1.20+1.11;  …
方法一:   <script type= "text/javascript"> //保留三位小数,toLocaleString() 方法可把一个 Number 对象转换为本地格式的字符串. var num_s = "1232134456.546 "; alert(parseFloat(num_s).toLocaleString()); </script> 方法二: <script type="text/javascript&q…
消费贷款app"一刻千金"接入网易严选总结 主要任务列表 隐藏相关元素 商品列表页跳转事件绑定 获取商品信息(skuid比较复杂) 隐藏元素 这部分没什么好讲的,使用原生js的document的api定位元素或者jQuery的选择器定位元素,然后隐藏(hide)或者移除(remove) 阻止列表页的事件 搜索到结果后,点击其中某个商品,希望跳转至改造过的详情页(改变了购买方式). 搜索列表页的html主要结构如下: <ul class="list"> &…
JS中会自动清除句子和句子之间的空格以及tab缩进, 这样就可以允许用户编写的代码更加随性和更加可读, 在该行代码解析的时候如果该行代码可以解析, 就会在该行代码最后自动填写分号,如果该行代码无法解析就会把该行代码和下一句代码合并, 直到代码可以解析: Js中如果一个语句以  (  [ / + -  开头,就有可能与上一句合在一起解析 也因为js会自动添加 ";" , 写js不注意就养成了不好的习惯, 代码有时候没事, 跑起来却出了错: 比如,少了一个分号就报错了: 运行下面代码 va…
首先给一个神奇的图: 我的反应,精分吧!一会儿true一会儿false的... 后来发现,把g去掉后就正常了,那这是为什么呢??lastIndex惹得鬼! 正文: lastIndex 全局正则表达是,有一个属性:lastIndex,这个属性是用来存放上一次匹配文本之后的第一个字符的位置. exec()和test()方法,都是以lastIndex属性中存的位置,作为下次正则匹配检索的起点.这也就是为什么会出现两次不一样的结果了. 解决办法:使用strin.search(reg)来替换test()了…
在隐形内嵌函数使用的时候,很容易把这一点忘记了:内嵌函数不能修改外部函数的变量和参数 使用了mysql存储过程实现数据计算,导致高并发的时候数据库挂掉 mysql最大连接数调整到16384 之前为1000js 值是字面传递,对象可以看做引用传递…
之前做留言板的时候,我就被深拷贝坑了一次,这次做API管理系统,没想到又被深拷贝坑了一次. 最后,拷贝对象的时候,如果要用到对象里的prototype,一定要用$.extend(true,{},要拷贝的对象) !!!!! 因为我们写的插件,都是对象,公共方法都在prototype里.所以浅拷贝会导致prototype里的方法调用不了. 另外,如果不需要用到prototype,但是又想要复制出一个独立的对象,切断和要复制对象的关联,可以采用下面的方式…