js

js页面跳转

假如想象 提交于 2020-01-28 06:00:18
第 1种: <script language="javascript" type="text/javascript"> window.location.href="login.jsp?backurl="+window.location.href; </script> 第 2种: <script language="javascript"> alert("返回"); window.history.back(-1); </script> 第 3种: <script language="javascript"> window.navigate("top.jsp"); </script> 第 4种: <script language="JavaScript"> self.location='top.htm'; </script> 第 5种: <script language="javascript"> alert("非法访问!"); top.location='xx.jsp'; </script> 按钮式:   <INPUT name="pclog" type="button" value="GO" onClick="location.href='http://9ba.cn/'"> 链接式:   <a href="javascript:history.go(-1)">返回上一步</a>  

js 浮点类型(float) 加、减、乘、除 出现误差的解决方案

吃可爱长大的小学妹 提交于 2020-01-28 05:32:55
加法: function accAdd(arg1,arg2){ var r1,r2,m; try{r1=arg1.toString().split(".")[1].length}catch(e){r1=0} try{r2=arg2.toString().split(".")[1].length}catch(e){r2=0} m=Math.pow(10,Math.max(r1,r2)) return (arg1*m+arg2*m)/m } //给Number类型增加一个add方法,调用起来更加方便。 Number.prototype.add = function (arg){ return accAdd(arg,this); } 例: (aa).add(bb) aa+bb 减法: function Subtr(arg1,arg2){ var r1,r2,m,n; try{r1=arg1.toString().split(".")[1].length}catch(e){r1=0} try{r2=arg2.toString().split(".")[1].length}catch(e){r2=0} m=Math.pow(10,Math.max(r1,r2)); //last modify by deeka //动态控制精度长度 n=(r1>=r2)?r1:r2; return (

JS练习:打印出1-10000之间所有的质数

ぃ、小莉子 提交于 2020-01-28 04:54:50
console.time(“计时器的名字”):用来开启一个计时器; 这个字符串(计时器的名字)将会作为计时器的标识; console.timeEnd(“计时器的名字”):用来停止一个计时器; 程序性能优化: 不加break 195ms 先加break后 29ms 再修改为j<=Math.sqrt(i)后 3ms < ! DOCTYPE html > < html > < head > < meta charset = "UTF-8" > < title > < / title > < script type = "text/javascript" > //在程序执行前,开启计时器 console . time ( "test" ) ; //打印2-10000之间所有的数 for ( var i = 2 ; i <= 10000 ; i ++ ) { //创建一个布尔值,用来保存结果,默认i是质数 var flag = true ; //判断i是否是质数 //获取到2-Math.sqrt(i)之间的所有的数 for ( var j = 2 ; j <= Math . sqrt ( i ) ; j ++ ) { //判断i是否能被j整除 if ( i % j == 0 ) { //如果进入判断则证明i不是质数,修改flag值为false flag = false ; /

通用的页面加载js有四种方式

不想你离开。 提交于 2020-01-28 04:39:40
1. window.onload = function(){}; —-js 2. $(window).load(function(){}) ;——Jquery 3. $(document).ready(function(){}); –Jquery 4. $(function(){}); ———————Jquery 其中1和2为同一种,3和4为同一种 1、2表示:页面全部加载完成(引用文件,图片)再加载内部函数,且只能执行一个(当文件由多个onload或者load,只加载最后一个)。 3、4在window.onload执行前执行的,在DOM加载完毕后,页面全部内容(如图片等)完全加载完毕前被执行。而window.onload会在页面资源全部加载完毕后才会执行。 来源: CSDN 作者: Dwell_hls 链接: https://blog.csdn.net/weixin_42554191/article/details/103810825

java/js 导出word 或excel

倖福魔咒の 提交于 2020-01-28 04:15:52
需求, 下载统计数据, 导出word/excel (含统计图) (已完成html统计展示) 怎么办呢? 思路. 思路一: 前端 (无法完全满足图片需求, 如果有图片,不建议这么做) 前端js: 如果需要得到的导出文档的内容, 和你已有的html展示是雷同的, 可以利用html2word, 或html2excel(引用插件jquery, FileSave.js, jquery.wordexport.js) 直接转成可识别的doc或xls文档. 这些js也可以自己写, 主要思路是, 按需获取需要导出的dom内容, 然后拼接固定的头部尾部代码, 让word软件可识别, 然后保存blob. 用js来实现的问题在哪里呢? first , 实际上, js生成的这个文件, 是在原汁原味的html上套了一层doc的壳(这一点在word点击另存为的时候可以看到, 当前文件的是一个*mhtml), 这是word软件可以解析编辑而已. 有些html的样式或者字体可能无法显示, 或者在当前的编辑模式下, word无法显示 second ,要命的是什么呢, 图片无法很好的显示! 如果html的img src是网址, word还是会发请求给服务器, 请求图片, 所以服务器的图片必须可以跨域访问 (!!!) 如果是canvas或者base64, word必须进入编辑模式才可以看到, wps是直接看不到的

webpack4.x 使用

让人想犯罪 __ 提交于 2020-01-28 03:38:43
webpack4.x webpack 模块打包工具,分析项目结构,找到js模块及一些浏览器不能运行的语言如ES6/sass等,并将其转换和打包为何时的格式供浏览器使用; 打包:将多个js文件打包成一个文件,减少服务器压力和下载带宽; 转换:把浏览器不能识别的语言转换为js,让浏览器能够正确识别 优化:优化项目,提高性能 安装 // 新建项目文件夹,并进入 mkdir webpack_demo cd webpack_demo //全局安装 npm install -g webpack // 全局安装后还需进行一个项目目录的安装,npm安装之前先进行初始化,目的-生成package.json文件(包括当前项目依赖模块,自定义脚本任务等) npm n init // 项目目录的安装 --save-dev保存到package.json中且在dev开发中使用,生产环境中不使用; npm install --save-dev webpack // 查看webpack版本 webpack -v // ps:查看webpack版本时会提示安装webpack-cli,因为此时安装的webpack版本是4.x;webpack 已经将 webpack 命令行相关的内容都迁移到 webpack-cli,所以除了 webpack 外,还需要安装 webpack-cli npm install --save

js 加密和解密

余生长醉 提交于 2020-01-28 02:34:06
// aes对称加密 const CryptoJS = require('crypto-js'); //引用AES源码js const key = CryptoJS.enc.Utf8.parse("1234123412ABCDEF"); //十六位十六进制数作为密钥 const iv = CryptoJS.enc.Utf8.parse('ABCDEF1234123412'); //十六位十六进制数作为密钥偏移量 //解密方法 function Decrypt(word) { let encryptedHexStr = CryptoJS.enc.Hex.parse(word); let srcs = CryptoJS.enc.Base64.stringify(encryptedHexStr); let decrypt = CryptoJS.AES.decrypt(srcs, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 }); let decryptedStr = decrypt.toString(CryptoJS.enc.Utf8); return decryptedStr.toString(); } //加密方法 function Encrypt(word) { let srcs =

JS学习日记--正则基础语法

女生的网名这么多〃 提交于 2020-01-28 01:38:06
一、正则表达式 正则表达式是由普通字符及特殊字符组成的对字符串进行过滤的逻辑公式 创建方式 字符量的方式: var reg = /abc/; 构造函数 var reg = new RegExp(“abc”); 二、正则表达式方法 方法名 作用 返回值 test 检测是否有符合表达式规则的子串 有返回true,否则返回false match 检索指定的值 这些值组成的数组 search 查找符合规则的子串 第一个匹配成功的位置 split 分割 返回数组 replace 替换 返回替换后的值 exec 将匹配成功的放到数组里 匹配成功的值,没有成功则返回null 注:exec如果要全部输出,需要多次调用,一次只能输出一个 < script type = "text/javascript" > /*创建方法*/ var reg = /abc/ ; //1.字面量的方式 var reg = new RegExp ( "abc" ) ; //2.构造函数 /*方法*/ //test方法 用来检测是否有符合表达式规则的子串,有返回true,无返回false var str = "aabcd" ; console . log ( reg . test ( str ) ) ; //修饰符 g i //g表示全局匹配 //i不区分大小写 //match方法 检索指定的值

【 VUE 指令 】- 7 v-on

让人想犯罪 __ 提交于 2020-01-28 00:48:45
1 v-on 1.1 基本用法 v-on 指令用于给页面元素绑定事件。 语法: v - on : 事件名 = "js片段或函数名" 示例: < div id = " app " > <!--事件中直接写js片段--> < button v-on: c 来源: CSDN 作者: 不知所起 一往而深 链接: https://blog.csdn.net/weixin_42112635/article/details/104095851

js中数组常用方法总结

荒凉一梦 提交于 2020-01-28 00:25:08
操作数组 操作数组,印象中操作数组的方法很多,下面总结了一下数组中常用的几个方法: JavaScript中创建数组有两种方式 (一)使用 Array 构造函数: var arr1 = new Array(); //创建一个空数组var arr2 = new Array(20); // 创建一个包含20项的数组var arr3 = new Array("lily","lucy","Tom"); // 创建一个包含3个字符串的数组 (二)使用数组字面量表示法: var arr4 = []; //创建一个空数组var arr5 = [20]; // 创建一个包含1项的数组var arr6 = ["lily","lucy","Tom"]; // 创建一个包含3个字符串的数组 数组的方法有数组原型方法,也有从object对象继承来的方法,这里我们只介绍数组的原型方法,数组原型方法主要有以下这些: join() push()和pop() shift() 和 unshift() sort() reverse() concat() slice() splice() indexOf()和 lastIndexOf() (ES5新增) forEach() (ES5新增) map() (ES5新增) filter() (ES5新增) every() (ES5新增) some() (ES5新增)