
js
文章平均质量分 86
桃子叔叔
机会总是留给有准备的人,而我就是那个人
展开
-
【建议点赞】this面试题酸爽继续
this 永远指向最后调用它的那个对象匿名函数的this永远指向window使用.call()或者.apply()的函数是会直接执行的bind()是创建一个新的函数,需要手动调用才会执行如果call、apply、bind接收到的第一个参数是空或者的话,则会忽略这个参数forEach、map、filter函数的第二个参数也是能显式绑定this的。原创 2024-07-16 15:59:23 · 740 阅读 · 0 评论 -
javascript正则表达式知识点全面梳理
一、使用方式1、字面量模式var reg = /is/g全局匹配'is'2、构造函数RegExpvar reg = new RegExp('is','g');二者区别:正则表达式字面量始终共享同一个RegExp实例,而使用RegExp每次创建一个新的实例,如下面的代码:var re=null;for(var i =0;i<4;i++){...原创 2018-02-08 18:06:40 · 638 阅读 · 0 评论 -
全面理解Javascript的面向对象(二)--创建对象与继承
在前文全面理解Javascript的面向对象(一)中详细介绍了面向对象的主要知识点,可以帮助大家很细致的了解js面向对象的概念,本文作为补充,主要从对象的构建和继承的方式两方面进行分析。一、创建对象主要的几种方式1 工厂模式工厂模式抽象了创建具体对象的过程,用函数封装以特定接口创建对象的细节。function createPerson(name,age,job) { var o = new原创 2017-04-18 20:50:04 · 418 阅读 · 0 评论 -
全面理解Javascript的面向对象(一)
由于Javascript的各种设计模式在实现上和传统的面向对象语言的实现相差很大,初学者或者后端转前端的小伙伴刚开始接触js时会一头雾水,本文把js重要的几个点摘出来,更简单直接的帮助大家去理解js的面向对象和实现。文中除了对基础知识的介绍外,最大的篇幅用来介绍高阶函数及其应用。因为在js开发中闭包和高阶函数应用很多,许多设计模式也是通过闭包和高阶函数实现的,理解好闭包和高阶函数,有助于继续学习js原创 2017-03-31 10:02:42 · 1428 阅读 · 0 评论 -
9个必须掌握的Javascript处理数组的方法
一 迭代方法ES5为数组定义了5个迭代方法,这些方法大大方便了处理数组的任务,支持这些方法的浏览器有 IE9+,Firefox2+,Safari3+,Opera9.5+和Chrome。1 every对数组中每一项进行给定函数,如果每一项都返回true,则返回truevar numbers = [1,2,3,4,5,4,3,2,1];var everyResult = numbers.every(fu原创 2017-04-07 10:21:44 · 9458 阅读 · 1 评论 -
js高级提升(一)数据类型
一、undefined/null/NaN1、undefined1)当使用var声明变量但未初始化就是undefinedvar message;alert(message); //undefinedalert(typeof message); //undefined2)尚未定义的变量不是undefinedalert(age); //报错2、null表示一个空指针对象aler原创 2016-12-20 18:16:48 · 936 阅读 · 0 评论 -
javascript 闭包详解+示例(一)
闭包形成与变量的作用域及变量生命周期密切相关1、变量的作用域当在函数中声明一个变量,如果之前没有带上var,这个变量会变成全局变量,全局变量容易造成命名冲突。在js中,内部变量可以看到外部变量,外部变量无法看到内部变量,变量的搜索是从内到外的var a=1;var func1 = function(){var b = 2;var func2 = function(){原创 2016-05-23 14:42:01 · 635 阅读 · 0 评论 -
javascript原型模式
在原型变成思想中,类并不是必须的,对象并不一定要从类中创建,一个对象通过克隆另一个对象而得到。1、原型模式实现的关键是语言本身提供了clone方法,es5提供了Object.creat方法。如下:var Plane=function(){ this.blood=1000; this.attackLevel=1; thi原创 2016-05-23 20:54:53 · 425 阅读 · 0 评论 -
js中undefined,null,NaN的区别
1. js中undefined,null,NaN的区别js中undefined,null,NaN的区别类型分析:js中的数据类型有undefined,boolean,number,string,object等5种,前4种为原始类型,第5种为引用类型。var a1;var a2 = true;var a3 = 1;var a4 = "Hello";var原创 2016-05-23 22:21:00 · 339 阅读 · 0 评论 -
javascript中的this、apply、call
1、js的值总是指向对象,具体指向哪个对象是在运行时给予函数的执行环境动态绑定的。this指向大体分为4种:作为对象的方法调用作为普通函数调用构造器调用call、appy调用首先看一下下面的例子:window.name="nikon"; var myObject={ name:'stven',原创 2016-05-23 22:23:00 · 405 阅读 · 0 评论 -
javascript策略模式
在程序设计中,经常遇到一个功能有很多方案可以选择,一个过程下有很多条件分支。最初的实现方案是对每个情况用if-els判断,如下:var calculateBonuw=function(level,salary){ if(level=='s'){ return salary*4; }el原创 2016-05-24 14:45:54 · 485 阅读 · 0 评论 -
javascript 代理模式
代理模式是为一个对象提供一个代用品或占位符,以便控制对它的访问。实例一、图片懒加载图片懒加载是指,图片的加载应该在页面全部加载完后,再去加载。这样能够提高加载的速度和网页的体验性。实际操作就是,将原来网页的src独立出来,将原来图片使用一个loading.gif代替,然后在js里面手动创建个img去加载这个src,当加载完后把src替换就可以了。var myImage=(funct原创 2016-05-24 17:28:02 · 839 阅读 · 0 评论