js
有趣的前端
这个作者很懒,什么都没留下…
展开
-
js 空格判空去空格
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title></head> <body> <input type="text" id="test"/> <input type="button" val原创 2021-03-16 15:07:26 · 303 阅读 · 0 评论 -
彻底理解js中的闭包
闭包是js的一个难点也是它的一个特色,是我们必须掌握的js高级特性。我们都知道,js的作用域分两种,全局和局部,基于我们所熟悉的作用域链相关知识,我们知道在js作用域环境中访问变量的权利是由内向外的,内部作用域可以获得当前作用域下的变量并且可以获得当前包含当前作用域的外层作用域下的变量,反之则不能,也就是说在外层作用域下无法获取内层作用域下的变量,同样在不同的函数作用域中也是不能相互访问彼此变量的,那么我们想在一个函数内部也有限权访问另一个函数内部的变量该怎么办呢?闭包就是用来解决这一需求的,闭包的本.原创 2020-10-04 10:15:08 · 180 阅读 · 0 评论 -
js原生解析路由传参中的汉字
var str = JSON.stringify(strAddrs); //对象转为字符串 str = "../position.html?strAddrs="+str; //路由拼接 str = encodeURI(str); //encodeURI()是Javascript中真正用来对URL编码的函数 window.location.href = str原创 2020-09-24 21:09:57 · 830 阅读 · 0 评论 -
html5+JS调用手机摄像头扫码
在app项目中实现HTML5的扫描二维码,网上的搜了一大推,但是实际使用的时候发现能直接上手的并不多,所以自己百度,然后提炼了一些,下面直接上代码。 注意: 1.安卓(5.1)有些手机中测试正常,iOS暂时不行,后续再研究。 2.需要自己打包成APP,比如用Hbuilder打包,因为摄像头涉及权限问题。(我打包的下载)js插件链接:插件代码:!function(){"use strict";let getObjectURL=function(file){let url=null;if(windo.原创 2020-09-22 10:38:30 · 6781 阅读 · 3 评论 -
javaScript禁止鼠标右键及F12禁止查看源代码及禁止其他操作
1. 屏蔽F12 审查元素<script> document.onkeydown = function () { if (window.event && window.event.keyCode == 123) { alert("F12被禁用"); event.keyCode = 0; event.returnValue = false; } if (原创 2020-09-18 21:49:15 · 374 阅读 · 0 评论 -
js继承的那些事
一、原型链继承原理示例:通过函数的prototype属性给其原型添加属性或方法!function Animal (name) { // 属性 this.name = name || 'Animal'; // 实例方法 this.sleep = function(){ console.log(this.name + '正在睡觉!'); }}// 原型方法Animal.prototype.eat = function(food) { console.log(thi原创 2020-08-21 21:05:12 · 157 阅读 · 0 评论 -
lastIndexOf()方法的使用
lastIndexOf()lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索。语法:stringObject.lastIndexOf(searchvalue,fromindex) 参数 描述 searchvalue 必需。规定需检索的字符串值。 fromindex 可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是 0 到 stringObject原创 2020-08-07 22:52:05 · 7779 阅读 · 1 评论 -
js原生 全选,全不选,选项,反选
不多说,自己看上代码:效果:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">原创 2020-08-02 14:40:54 · 138 阅读 · 1 评论 -
原生js写计算器
效果:代码:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <m原创 2020-08-01 21:04:59 · 361 阅读 · 1 评论 -
JavaScript 全局函数、属性
JavaScript 全局属性属性描述Infinity代表正的无穷大的数值。NaN指示某个值是不是数字值。undefined指示未定义的值。JavaScript 全局函数函数 描述decodeURI() 解码某个编码的 URI。decodeURIComponent() 解码一个编码的 URI 组件。encodeURI() 把字符串编码为 URI。encodeURIComponent() 把字符串编码为 URI 组件。escape() 对字符串进行编码原创 2020-07-31 13:54:31 · 75 阅读 · 0 评论 -
原生js获取 一个dom元素距离页面可视区域的位置值
这个方法返回一个矩形对象,包含四个属性:left、top、right和bottom。分别表示元素各边与页面上边和左边的距离。var box=document.getElementById(‘box’); // 获取元素alert(box.getBoundingClientRect().top); // 元素上边距离页面上边的距离alert(box.getBoundingClientRect().right); // 元素右边距离页面左边的距离alert(box.getBoundingClientRe原创 2020-07-23 14:27:49 · 2470 阅读 · 0 评论 -
添加页面滚动监听,来完成到底部加载更多数据
代码: window.addEventListener('scroll', () => { if (document.documentElement.scrollHeight - document.documentElement.clientHeight - document.documentElement.scrollTop < 1) { if (this.p === 4) {原创 2020-07-08 16:17:00 · 411 阅读 · 0 评论 -
includes(),startsWith(),endsWith(),的使用与区别
includes():返回布尔值,表示是否找到了参数字符串。startsWith():返回布尔值,表示参数字符串是否在原字符串的头部。endsWith():返回布尔值,表示参数字符串是否在原字符串的尾部。let s ='He1lo world!' ;s. startsWith( 'Hello') // trues. endsWith('!') // trues. includes('o') // true...原创 2020-06-29 16:42:39 · 423 阅读 · 0 评论 -
ES6、ES7、ES8、ES9、ES10的新增方法
目录1.ES6新特性(2015)1.1模块化(Module)1.1.1导出(export)1.1.2导入(import)1.2箭头(Arrow)函数1.2.1箭头函数的结构1.3默认参数1.4模板字符串1.5.结构赋值1.5.1数组的结构赋值1.5.2对象的结构赋值1.6延展操作符(Spread operator...原创 2020-06-29 09:23:29 · 868 阅读 · 0 评论 -
ES6 export导出的函数 引用return为undefined的情况解决
相关代码// index1.jsexport function getInitTime() { const nowTime = new Date(); const nowTimeStamp = new Date().getTime(); return { nowTime, nowTimeStamp }}// index2.jsimport { getInitTime } from './index1';console.log(getInitTime);原创 2020-06-28 17:38:59 · 2106 阅读 · 2 评论 -
Array数字 原生 冒泡排序 及一些数组处理
1. 冒泡排序let arr = [2, 1, 8, 6, 74, 46, 15, 99];for (let i = 0; i < arr.length; i++) {//决定比较几轮; for (let j = 0; j < arr.length - i - 1; j++) {//决定比较次数 if (arr[j] > arr[j + 1]) {//大于小于决定排序从大到小或从小到大. let temp = arr[j];原创 2020-06-28 11:55:52 · 209 阅读 · 0 评论 -
js 返回顶部 原生js
1、纯js,无动画版本window.scrollTo(x-coord, y-coord); window.scrollTo(0,0); 2、纯js,带动画版本1.var scrollToTop = window.setInterval(function() { var pos = window.pageYOffset; if ( pos > 0 ) { window.scrollTo( 0, pos - 20 ); // how far to scrol原创 2020-06-20 10:08:26 · 178 阅读 · 1 评论