随笔分类 -  JS

js中arguments详解
摘要:在js中一切都是对象,连函数也是对象,函数名其实是引用函数定义对象的变量。 什么是arguments? 这个函数体内的arguments非常特殊,实际上是所在函数的一个内置类数组对象,可以用数组的[i]和.length。 每个函数都有一个arguments属性,表示函数的实参集合,这里的实参是重点, 阅读全文

posted @ 2018-06-21 13:37 ranyonsue 阅读(1297) 评论(0) 推荐(0) 编辑

JS函数防抖与函数节流
摘要:概念 函数防抖(debounce) 当调用动作过n毫秒后,才会执行该动作,若在这n毫秒内又调用此动作则将重新计算执行时间 函数节流(throttle) 预先设定一个执行周期,当调用动作的时刻大于等于执行周期则执行该动作,然后进入下一个新周期 函数节流(throttle)与 函数防抖(debounce 阅读全文

posted @ 2018-06-20 09:50 ranyonsue 阅读(757) 评论(0) 推荐(0) 编辑

通过JS如何获取IP地址
摘要:通过JS获取你真实的外网IP和内网IP,就算开代理也没有用,想想真是太可怕了,还能不能愉快的装逼了! 代码: //get the IP addresses associated with an account function getIPs(callback){ var ip_dups = {}; 阅读全文

posted @ 2018-06-12 17:19 ranyonsue 阅读(25353) 评论(0) 推荐(0) 编辑

关于URL编码
摘要:一、问题的由来 URL就是网址,只要上网,就一定会用到。 一般来说,URL只能使用英文字母、阿拉伯数字和某些标点符号,不能使用其他文字和符号。比如,世界上有英文字母的网址"http://www.abc.com",但是没有希腊字母的网址"http://www.aβγ.com"(读作阿尔法-贝塔-伽玛. 阅读全文

posted @ 2018-06-06 17:32 ranyonsue 阅读(420) 评论(0) 推荐(0) 编辑

报错Unexpected token u
摘要:报错Unexpected token u,出错位置提示在index.html的第一行。 出现这个错误的原因是尝试JOSN.parse一个undefined的对象导致的,解决办法就是如果为undefined就设置成null。null不会导致错误 。 阅读全文

posted @ 2018-05-24 16:27 ranyonsue 阅读(542) 评论(0) 推荐(0) 编辑

arguments.callee
摘要:在函数内部,有两个特殊的对象:arguments 和 this。其中, arguments 的主要用途是保存函数参数, 但这个对象还有一个名叫 callee 的属性,该属性是一个指针,指向拥有这个 arguments 对象的函数。 请看下面这个非常经典的阶乘函数。 function factoria 阅读全文

posted @ 2018-04-13 16:21 ranyonsue 阅读(194) 评论(0) 推荐(0) 编辑

控制input只能输入数字和两位小数
摘要:<input type="text" name="je" onkeyup="clearNoNum(this)" /> function clearNoNum(obj){ obj.value = obj.value.replace(/[^\d.]/g,""); //清除"数字"和"."以外的字符 ob 阅读全文

posted @ 2018-03-27 17:21 ranyonsue 阅读(3322) 评论(1) 推荐(0) 编辑

使用JSONP实现跨域
摘要:什么是跨域? 简单的来说,出于安全方面的考虑,页面中的JavaScript无法访问其他服务器上的数据,即“同源策略”。而跨域就是通过某些手段来绕过同源策略限制,实现不同服务器之间通信的效果。 什么是JSONP? JSON(JavaScript Object Notation) 是一种轻量级的数据交换 阅读全文

posted @ 2018-03-15 11:13 ranyonsue 阅读(537) 评论(0) 推荐(0) 编辑

前端常见跨域解决方案
摘要:什么是跨域? 跨域是指一个域下的文档或脚本试图去请求另一个域下的资源,这里跨域是广义的。 广义的跨域: 1.) 资源跳转: A链接、重定向、表单提交 2.) 资源嵌入: <link>、<script>、<img>、<frame>等dom标签,还有样式中background:url()、@font-f 阅读全文

posted @ 2018-03-14 16:56 ranyonsue 阅读(957) 评论(0) 推荐(0) 编辑

js获取对象长度和名称
摘要:1.对象的长度不能用.length获取,用js原生的Object.keys可以获取到 var obj = {'name' : 'Tom' , 'sex' : 'male' , 'age' : '14'}; var arr = Object.keys(obj); console.log(arr); / 阅读全文

posted @ 2018-03-02 17:46 ranyonsue 阅读(61393) 评论(0) 推荐(0) 编辑

js中判断数组中是否含有某个字符串方法
摘要:1.两个数组间互相校验 Var inArray = function(arr, item) { for(var i = 0; i < arr.length; i++) { if(arr[i] == item) { return true; } } return false; }; var links 阅读全文

posted @ 2018-03-02 14:33 ranyonsue 阅读(38897) 评论(0) 推荐(1) 编辑

正则表达式入门
摘要:正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符")。 正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。 一、基本语法 在JS中,正则表达式为对象,用如下两种方式定义: 直接量法: /patte 阅读全文

posted @ 2018-03-02 10:35 ranyonsue 阅读(630) 评论(0) 推荐(0) 编辑

Javascript获取数组中的最大值和最小值方法汇总
摘要:方法一 sort()方法 b-a从大到小,a-b从小到大 var max2 = arr.sort(function(a,b){ return b-a; })[0]; console.log(max2) 方法二 //最小值 Array.prototype.min = function() { var 阅读全文

posted @ 2018-02-24 15:33 ranyonsue 阅读(599) 评论(0) 推荐(0) 编辑

源生js惯性滚动与回弹效果
摘要:在写移动端的APP或者页面时,经常会遇到惯性滚动与回弹效果。用插件iscroll可以轻松解决这个问题,大多数的移动框架也能轻松解决这个问题,它们内部都封装了这个效果。 一直好奇这个效果原生JS是怎么实现的,里面涉及到的弹力公式以及惯性效果还有一大堆临界点的判断,很是考验人。 在网上找了一下,看到有大 阅读全文

posted @ 2017-12-26 17:31 ranyonsue 阅读(11066) 评论(1) 推荐(0) 编辑

JavaScript中常见的字符串操作函数及用法
摘要:1、字符串转换 字符串转换是最基础的要求和工作,你可以将任何类型的数据都转换为字符串,你可以用下面三种方法的任何一种: var num= 19; // 19 var myStr = num.toString(); // "19" 你同样可以这么做: var num= 19; // 19 var my 阅读全文

posted @ 2017-12-22 11:28 ranyonsue 阅读(332) 评论(0) 推荐(0) 编辑

获取伪元素的属性和改变伪元素的属性
摘要:获取伪元素的属性值 获取伪元素的属性值可以使用window.getComputedStyle()方法,获取伪元素的CSS样式声明对象。然后利用getPropertyValue方法或直接使用键值访问都可以获取对应的属性值。 语法:window.getComputedStyle(element, [ps 阅读全文

posted @ 2017-12-21 15:25 ranyonsue 阅读(3251) 评论(0) 推荐(0) 编辑

gulp常用插件
摘要:1、gulp-uglify(JS压缩) 安装:npm install --save-dev gulp-uglify gulpfile.js代码如下: var gulp = require('gulp'), var rename= require('gulp-rename') var uglify= 阅读全文

posted @ 2017-12-18 13:38 ranyonsue 阅读(251) 评论(0) 推荐(0) 编辑

Javascript 异步实现机制
摘要:Javascript 单线程指的是在一个浏览器进程中只存在一个 Javascript 执行线程,所以任务需要顺序排列等待执行,而不能像 Java 等多线程语言一样并发执行。但是这种单线程模型在处理耗时的异步任务是会出现较长时间的线程阻塞,导致后续的任务不能被及时处理。所以在 Javascript 中 阅读全文

posted @ 2017-12-11 11:00 ranyonsue 阅读(680) 评论(0) 推荐(0) 编辑

JavaScript:彻底理解同步、异步和事件循环(Event Loop)
摘要:一. 单线程 一. 单线程 我们常说“JavaScript是单线程的”。 所谓单线程,是指在JS引擎中负责解释和执行JavaScript代码的线程只有一个。不妨叫它主线程。 但是实际上还存在其他的线程。例如:处理AJAX请求的线程、处理DOM事件的线程、定时器线程、读写文件的线程(例如在Node.j 阅读全文

posted @ 2017-12-08 14:37 ranyonsue 阅读(436) 评论(1) 推荐(0) 编辑

深入理解javascript中的立即执行函数(function(){…})()
摘要:javascript和其他编程语言相比比较随意,所以javascript代码中充满各种奇葩的写法,有时雾里看花,当然,能理解各型各色的写法也是对javascript语言特性更进一步的深入理解。 ( function(){…} )()和( function (){…} () )是两种javascrip 阅读全文

posted @ 2017-11-29 16:05 ranyonsue 阅读(777) 评论(0) 推荐(0) 编辑

导航