JustYeh的前端博客

关于js的相关文章
一道面试题(关于输出结果)
今天划水的时候看到一个面试题,比较有意思,记录一下。 题目 function Foo() { getName = function() { console.log("1"); }; return this; } Foo.getName = function() { console.log("2"); };

2019-06-11

前端小脚本
批量删除微博 document .querySelectorAll(".WB_feed.WB_feed_v3.WB_feed_v4 >div[mid]") .forEach((nodeItem, index) => { setTimeout(async () => { try {

2019-07-02

Object.defineProperty方法解读
Object.defineProperty是ES5中提出的新方法,作用是为对象新添加一个属性或者修改对象中已经存在的属性 用法 Object.defineProperty(obj, prop, descriptor) obj:需要定义属性的对象 prop:需要定义或修改的属性的名称 descriptor:需要定义或修改的属性的特性 上面的三个参数都是必需的 descriptor的值是一个对象

2017-09-18

js的方法和属性
方法或属性之间的区别 //对象构造函数 function People(name) { //私有属性,只能在对象构造函数内部访问 var NATION = 'china'; //共有属性,对象实例化后可以调用 this.name = name; //对象方法 this.introduce = function () {

2017-09-12

JavaScript异步问题解决方案
JavaScript是一门单线程语言,在执行一些比较耗时的操作(比如常见的Ajax请求)时,为了不阻塞后面代码的执行,往往需要执行异步操作。关于JS的运行机制,大家可以看阮一峰的这篇文章:JavaScript 运行机制详解:再谈Event Loop 如何处理异步操作在一直是个值得关注的问题,我会在这篇博文里介绍几种常见的处理异步函数的解决方案 使用回调函数 如果你有使用过JQuery,那么

2017-07-22

前端常用属性、方法备忘
在编写前端代码的过程中,有一些属性和方法是需要经常用到的,但是记忆起来又比较麻烦(反正我是间歇性记得),以前我总是要用了就去百度一下,每次还需要对网页对内进行一下筛选,总之很麻烦。本文总结了一些比较常用但又不容易记住的前端属性和方法,包括:文本溢出、文本禁止选中、点击目标区域以外影藏、获取元素距离与位置等。 文本溢出省略符 .text-ellipsis{ overflow: hidden; t

2017-06-24

JavaScript节流和防抖
节流throttle 设定一个时间间隔,某个频繁触发的函数,在这个时间间隔内只会执行一次。也就是说,这个频繁触发的函数会以一个固定的周期执行。 高频触发的函数每隔一个时间段执行执行,并且最后一次触发时也执行 适用场景: 鼠标不断点击触发,mousedown(单位时间内只触发一次) 监听滚动事件,比如是否滑到底部自动加载更多,用 throttle 来判断 时间戳版本 function throt

2019-07-02

JavaScript模块化开发
通俗易懂的介绍了模块化概念,以及使用模块化编程的必要性。详细介绍了实现模块化开发的演变过程。 一、为什么会有模块化 1.当一个项目开发的越来越复杂的时候,会遇到一些问题,比如: 命名冲突 当项目由团队进行协作开发的时候,不同开发人员的变量和函数命名可能相同;即使是一个开发,当开发周期比较长的时候,也有可能会忘记之前使用了什么变量,从而导致重复命名,导致命名冲突。 文件依赖 代码重用时,引入js

2019-07-02

RequireJS参考手册
关于RequireJS RequireJS 是一个JavaScript模块加载器。它非常适合在浏览器中使用,但它也可以用在其他脚本环境, 就像 Rhino and Node. 使用RequireJS加载模块化脚本将提高代码的加载速度和质量。 兼容性 IE 6+ .......... 兼容 ✔ Firefox 2+ ..... 兼容 ✔ Safari 3.2+ .... 兼容 ✔ Chrome 3

2019-07-02