![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JS
文章平均质量分 59
云胡不喜?
无舟难自渡,无解不疯魔
展开
-
leetcode-1. 两数之和
leetcode-算法-两数之和原创 2022-06-29 17:05:22 · 166 阅读 · 0 评论 -
js-笔记-数据类型判断
今天偶然看到一篇文章typeof 和 instanceof 的区别,文章末尾的console.log(Number instanceof Number);//false console.log(String instanceof String);//false 有点迷,当时想着Number和String为啥不instanceof 它们自己呢???就测试了一下Number是啥,结果他们本身是个Function!!好嘛,想了一下也是,它可以new,创建实例啥的Object是functio..原创 2022-04-20 23:29:43 · 266 阅读 · 0 评论 -
JavaScript简介-1
JavaScript(JS) 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。JavaScript 是一种基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式和声明式(如函数式编程)风格。(原型编程是一种面向对象编程的风格。在这种风格中,我们不会显式地定义类,而会通过向其它类的实例(对象)中添加属性和方法来创建类,甚至偶尔使用空对象创建类。简单来说,这种风格是在不定义class的情况下创建一个object。)Brendan是JavaScript之父JavaS...原创 2022-03-02 19:13:23 · 871 阅读 · 0 评论 -
前端模块规范AMD/UMD/CommonJs
.babelrc文件中的:module设置为false,为什么会要设置成false?解释:使ES6模块语法转换到另一个模块类型(默认启用“commonjs”)。 设置为假则不变换模块。或者传入(“amd”、“umd”,“systemjs”、“commonjs”)。什么是模块?Javascript的组件生态在最近几年的发展很给力,我们的可选性更加广泛了。这本是一件好事,但是当多个第三方Javascript在一起混合使用的时候,我们可能会遇到一个很尴尬的问题,那就是不是所有的组件都能在一转载 2021-12-06 18:29:34 · 1797 阅读 · 0 评论 -
forEach-关于跳出循环
forEach(1)不能使用 continue 和 break !(for可以-continue过滤当前循环;break直接终止循环,跳出整个循环)(2)使用return,只能跳出当前循环,并不能跳出整个循环,更不会终止循环。(3)通过抛出异常的方式可以实现终止循环,跳出整个循环,如下示例:let arr = [{a:'1',b:'2',c:'3'},{a:'11',b:'22',c:'33'}];try { arr.forEach((val) => { i原创 2021-04-27 16:46:18 · 2484 阅读 · 0 评论 -
JS疑惑-2(作用域)
与JS疑惑-1有些关联,但也有点迷。。。function func(){ var a =b =5;}func();typeof(a); // "undefined"typeof(b); //"number"待续。。。原创 2020-12-04 16:34:24 · 92 阅读 · 0 评论 -
JS疑惑-1(连续赋值)
蛮疑惑的,主要还是 a.x = a = {n: 2};连续赋值有点懵。a={n: 2};a.x = a; ? ? ?看到一篇JS基础-连续赋值的博客,看图大概能明白一些,但还是有点点不确定。先记录一下,多思考思考吧var a = {n: 1};var b = a;a.x = a = {n: 2};console.log(a.x) // undefinedconsole.log(b.x) // {n: 2}...原创 2020-12-04 15:23:37 · 86 阅读 · 0 评论 -
JS-循环清空对象 && 判断数据类型的5种常用方法
应用场景:一个页面具有大量数据录入功能,在数据录入保存成功之后,需要刷新页面,即清空所有的数据。因为我把所有的字段定义到一个对象中,所以要清空这个对象,如果字段少,可以直接赋值清空,但是数据多的时候,直接赋值清空,就会产生大量的冗余代码,导致代码看起来多而乱,不好看,所以要写个函数循环清空(// TODO)。针对我的需求,我可以不用判断数据的类型了,因为我知道它就是一个对象;但是,想兼容更完善的话,首先需要判断要清空的数据类型。JS的数据类型有7种://JS的数据类型有7种:number,原创 2020-07-16 16:11:19 · 1757 阅读 · 0 评论 -
JS-常用方法整理
// TODO 整理原理ES6中有一些直接写好的方法//判断某字段在数组中的位置 indexofArray(arr:any, obj:any) { let i = arr.length; while (i--) { if (arr[i] === obj) { return i; } } } //判断数组中是否..原创 2020-05-27 10:46:00 · 142 阅读 · 0 评论 -
第三方免费开放API 获取用户IP 并查询其地理位置
需求:有一个项目是微信公众号,属于汽车服务。当车主在填写车主资料或者车辆认证时,需要填写车牌号或者车架号;车牌号需要选择省,为了方便用户操作,所以想自动定位默认省,如下图:我查询了一些博客,找到了一些方法,经过测试,记录一下还能用的。方法一:搜狐API有时候cname这个字段返回的不是省市,因为在2/3/4G网络时,定位失败,但是IP还是可以用的,亦可以配合第二种方法使用。...原创 2020-01-13 18:48:57 · 3455 阅读 · 2 评论 -
javascript原生事件句柄、BOM、DOM对象属性方法总结
javascript原生事件句柄、BOM、DOM对象属性方法总结句柄/属性/方法类型说明onabort事件句柄图像加载被中断onblur事件句柄元素失去焦点onfocus事件句柄元素获得焦点onchange事件句柄用户改变域的内容onclick事件句柄鼠标点击某个对象ondblclick事件句柄鼠标双击某个对象on...转载 2019-11-29 19:15:08 · 254 阅读 · 0 评论 -
JavaScript- 正则表达式匹配汉字
此文发布于2018-01-26-知乎(毕竟技术在不断的变化,请根据实际情况去写自己需要的代码)一个可能有 20 年历史的正则表达式在谷歌搜索「JavaScript 正则表达式匹配汉字」的时候,前几条结果全都是`/[\u4e00-\u9fa5]/`。没有人怀疑这个正则表达式有什么问题,那么在 2018 年的今天,让我们站在 Chrome 64 的肩膀上,放飞一下自我。汉文(Han Scr...转载 2019-10-24 15:46:14 · 6661 阅读 · 0 评论 -
js对象的底层属性
四个数据属性writable对象属性是否可以被任意改写enumerabel对象属性是否可枚举,可枚举就支持for in、Object.keys、JSON.stringify方法,反之亦然。value对象属性的默认值configurable能否使用delete、能否需改属性特性、或能否修改访问器属性、,false为不可重新定义,默认值为true两个访问器属性get获取对象属性值时候触发的方法set给...转载 2018-04-18 11:32:49 · 646 阅读 · 0 评论 -
JS-获取当前日期-月的天数
获取当前日期-月的天数,例:"2018-10",传入的参数类型必须是String类型// 获取月的天数function getMonthNum(val){ if(val.length > 4){ let year = val.slice(0,4); let month = val.slice(5); return new Date(year,month...原创 2019-01-25 14:37:38 · 1280 阅读 · 0 评论 -
面试题:如何实现一个深拷贝
转载于:元光木易杨前端大全20190228如何实现一个深拷贝第一步:简单实现其实深拷贝可以拆分成 2 步,浅拷贝 + 递归,浅拷贝时判断属性值是否是对象,如果是对象就进行递归操作,两个一结合就实现了深拷贝。根据上篇文章内容,我们可以写出简单浅拷贝代码如下。//木易杨functioncloneShallow(source){vartarget={};...转载 2019-03-01 18:12:13 · 662 阅读 · 0 评论 -
window.atob()与window.btoa()方法实现编码与解码
转载于https://www.cnblogs.com/moqiutao/p/6280099.html文章目录window.atob() 与window.btoa() Unicode 字符串 decodeURIComponent() 与encodeURIComponent() escape() 与unescape() 方法一.window.atob() 与window.btoa()...转载 2019-04-10 11:34:13 · 3264 阅读 · 0 评论 -
div模拟textarea文本框,输入文字高度自适应,且实现字数统计和限制
需求:文本框可根据输入内容高度自适应,不带滚动条,高度可变的那种,我搜索了很多,发现textarea无法实现我的需求,scrollHeigh这个无法获取实际内容的高度(我用的是那种简单的,可能我写的哪里不对吧;那种代码很多的,我又不想那么去做,麻烦。。。),所以只能div模拟textarea文本框了。使用div模拟textarea文本框,输入文字高度自适应,且实现字数统计和限制,输入字数超...原创 2019-05-20 16:29:45 · 1928 阅读 · 0 评论 -
JavaScript - reduce用法详解
介绍reducereduce() 方法接收一个函数作为累加器,reduce 为数组中的每一个元素依次执行回调函数,不包括数组中被删除或从未被赋值的元素,接受四个参数:初始值(上一次回调的返回值),当前元素值,当前索引,原数组语法:arr.reduce(callback,[initialValue]) 1 2 3 4 5 6 7 ...转载 2019-08-05 15:07:26 · 1268 阅读 · 0 评论 -
JS报错-Uncaught TypeError: 'caller', 'callee', and 'arguments' properties may not be accessed on...
报错信息:Uncaught TypeError: 'caller', 'callee', and 'arguments' properties may not be accessed on strict mode functions or the arguments objects for calls to them;也就是严格模式下,'caller', 'callee' 和'argume...原创 2019-09-12 18:43:19 · 50720 阅读 · 0 评论 -
VUEJS-checkbox全选&全不选
全选&全不选html: <div class="msg-position c-bg-wt"> <p class="msg-position-p">推送岗位<i class="c-rd">*</i> <span> ...原创 2018-11-23 12:50:20 · 2507 阅读 · 0 评论 -
JS中document对象 && window对象
所有的全局函数和对象都属于Window对象的属性和方法。区别: 1、window 指窗体。Window 对象表示浏览器中打开的窗口。 document指页面。document是window的一个子对象、一个对象属性。 2、用户不能改变 document.location(因为这是当前显示文档的位置)。 但是,可以改变window.location (用其它文档取代当前文档) ...原创 2018-05-14 19:04:34 · 13805 阅读 · 1 评论 -
Javascript进阶篇——浏览器对象—Location、Navigator、userAgent、screen对象Script
Location对象location用于获取或设置窗体的URL,并且可以用于解析URL。语法: location.[属性|方法]location对象属性图示:location 对象属性:location 对象方法:获取当前显示文档的URL,并输出:1 <script type="text/javascript">2 var a = location.href;3 docum...转载 2018-05-14 15:57:12 · 791 阅读 · 0 评论 -
js中几种实用的跨域方法原理详解
此文转载于https://www.cnblogs.com/2050/p/3191744.html这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据。只要协议、域名、端口有任何一个不同,都被当作是不同的域。下表给出了相对http://store.company.com/dir/page.htm...转载 2018-05-11 11:57:36 · 113 阅读 · 0 评论 -
JavaScript、ES5和ES6的介绍和区别
2015年6月17日,ECMAScript 6发布正式版本,即ECMAScript 2015。对于ES6和ES5,你了解多少?这篇文章讲了JavaScript,ES5,ES6的一些介绍和区别,挺详细的,结尾附录:ES5, ES6, ES2016, ES.Next: JavaScript 的版本是怎么回事?以下来自:http://www.cnblogs.com/lovesong/p/4908871....转载 2018-03-16 18:34:29 · 382 阅读 · 0 评论 -
JS获取日期(年/月/日/时/分/秒)&格式转化
因为用到JS倒计时,所以就把网上搜到的各种关于日期的整理了一下,有个印象,以后再用到,可以直接看自己的,方便很多。var myDate = new Date();以下都是在myDate的基础上得到的。myDate.getYear();//获取当前年份(2位)myDate.getFullYear();//获取完整的年份(4位,1970-????)myDate...原创 2018-02-07 14:22:21 · 108969 阅读 · 9 评论 -
JS倒计时
Js计算倒计时如上图,最近即将要上一个新产品,balanceCoin,3月20开始,所以产品要求有个倒计时,所以就整理了一下。HTML代码div class="bc-div" > h2>BalanceCoin计划-第二轮募集h2> p>-----区块链中的余额宝,结合钱包和银行的APPp> div> span class="bcd-num原创 2018-02-07 14:49:32 · 260 阅读 · 0 评论 -
JS 数据类型转换
JS 数据类型转换 方法主要有三种转换函数、强制类型转换、利用js变量弱类型转换。1. 转换函数:js提供了parseInt()和parseFloat()两个转换函数。前者把值转换成整数,后者把值转换成浮点数。只有对String类型调用这些方法,这两个函数才能正确运行;对其他类型返回的都是NaN(Not a Number)。在判断字符串是否是数字值前,parseIn转载 2017-10-30 15:10:40 · 209 阅读 · 0 评论 -
JS-立即执行函数(function(){...})() && (function(){...})()
在学习闭包的过程中遇到了(立即执行),之前见到(function(){...})() && (function(){...}())这种写法,就没有去知其所以然,也不会去写这种函数。所以一直害怕js,但还是要学习了解的,基本概念一定都要知道,才能自己造轮子,而不是一味地使用他人的,这篇借鉴了别人的,但已经都get了,因此,记个笔记,让自己记得更牢,包括之后的闭包,调用。javascr...原创 2018-06-29 15:48:40 · 345 阅读 · 0 评论 -
ES6新功能-模板字符串
ES6新功能-模板字符串 VS 传统JS字符串拼接原创 2018-11-22 14:49:52 · 644 阅读 · 0 评论 -
数组操作-删除数组中指定元素
删除数组中指定元素 //删除数组中指定元素 removeByValue(arr, val) { for (var i = 0; i < arr.length; i++) { if (arr[i] == val) { arr.splice(i, 1); break; } } } ...原创 2018-11-02 10:45:56 · 16759 阅读 · 0 评论 -
字数监控,价格监控等
1.textarea输入字数监控(在watch里可监控,但有些耗费性能,所以节流)<div class="gorder-note"> <label>备注 &nbsp;&nbsp; <span style="color:#777;font-size: 14px"> {{remarkLen}}/65</span&原创 2018-10-26 11:57:08 · 4492 阅读 · 0 评论 -
js - 数学运算(取整,取余)
取整1.取整//保留整数部分parseInt(3/2) // 12.向上取整// 向上取整,有小数就整数部分加1Math.ceil(3/2) // 23.四舍五入// 四舍五入Math.round(3/2) // 24.向下取整// 向下取整,丢弃小数部分Math.floor(3/2) // 1取余1.取余console.l...原创 2018-10-23 18:15:26 · 206719 阅读 · 0 评论 -
JS:两个json数组合并、去重,以及删除某一项元素
两个json数组合并去重,以及删除某一项元素let ha = [ {id:'H',name:'3'}, {id:'A',name:'6'}, {id:'B',name:'14'}, {id:'C',name:'60'} ];let hb= [ {id:'H',name:'2'}, {id:'A',name:'6'}, {id:'B',name:'16'}...原创 2018-10-17 12:41:36 · 16815 阅读 · 1 评论 -
JS数组遍历-forEach()、map()方法
[{a:'1',b:'11'},{a:'2',b:'21'},{a:'3',b:'31'}].forEach((item, index, array) => { let c = ''; let d = '21'; c = d == item.b ? item : ''; console.log(c)}) // 列表页展示 searchRulesByPage(...原创 2018-10-19 11:26:15 · 5152 阅读 · 0 评论 -
JS 基础 —— JavaScript 关键字(keyword)与保留字
转载于: JavaScript 关键字(keyword)与保留字一、JavaScript 所有关键字:breakcasecatchcontinuedefaultdeletedoelsefinallyforfunctionifininstanceofnewreturnswitchthisthrowtrytypeofvarvoidwhilewi...转载 2018-09-21 12:10:56 · 5280 阅读 · 0 评论 -
JS报错:Uncaught RangeError: Maximum call stack size exceeded
之前,遇到Uncaught RangeError: Maximum call stack size exceeded,查了一下,这个就是“最大堆栈超过了最大值”,一般这种错误也是在递归函数当中出现。 但是下面,我在写订单号查询的时候,也报了Uncaught RangeError: Maximum call stack size exceeded。产生错误原因因为一条投诉,可以有...原创 2018-08-17 17:14:21 · 87439 阅读 · 0 评论 -
在 2016 年学 JavaScript 是一种什么样的体验?
译者:方应杭 嘿,我最近接到一个 Web 项目,不过老实说,我这两年没怎么接触 Web 编程,听说 Web 技术已经发生了一些变化。听说你是这里对新技术最了解的 Web 开发工程师? 准确地说,我是一名「前端工程师」。不过你算是找对人了。我对今年的技术别提多熟了,前端可视化、音乐播放器、能踢足球的无人机,你尽管问吧。我刚去 JS 大会和 React 大会逛了一圈,没有什么新技转载 2016-10-11 19:00:39 · 301 阅读 · 0 评论