JavaScript
Alexbyy
这个作者很懒,什么都没留下…
展开
-
【javascript】手写bind函数
一、手写bind函数bind的作用调用func.bind(obj)的作用是返回一个新函数,并且这个新函数的作用域,即其this只想obj。举个例子:function func1(){ console.log(this) //在浏览器控制台中输出Windows}var obj = {a:1}var func2 = func1.bind(obj)func2() //此时浏览器控制台...原创 2019-11-06 20:57:54 · 580 阅读 · 0 评论 -
【JS设计模式】构造器模式和工厂模式
一、构造器模式通俗讲构造器就是创建一个对象实例时所用到的函数。通过new Constructor(),返回该实例。在js中想要创建一个对象可以通过以下三种方式:var obj1 = {};// orvar obj2 = Object.create(null);// orvar obj3 = new Object();对于最后一种其实使用到的就是构造器,只不过这个构造器比较特殊...原创 2019-09-02 10:57:18 · 413 阅读 · 0 评论 -
【Javascript】js对象操作问题
假设一个对象为:var obj = {name: "xiao", age: 24};1.问题1 如何判断obj自己是否包含属性name,而不是在原型上存在?obj.hasOwnProperty("name") // 如果为true,则存在2.问题2 如何判断obj,是否为空对象?Object.keys(obj).length > 0 // 返回所有由自身属性组成的...原创 2019-08-08 10:18:37 · 161 阅读 · 0 评论 -
addEventListener冒泡与捕获的区别
addEventListener(EventName, func, bool)这个函数接受三个参数,第一个是事件名,第二个参数是事件发生后调用的函数,第三是布尔值,如果为true,代表事件在捕获时触发,为false时是冒泡时触发,如果不传该参数,则默认为false。2.举例说明捕获触发与冒泡触发的区别html代码:<!DOCTYPE html><html><...原创 2019-06-10 17:54:39 · 1281 阅读 · 0 评论 -
【javascript】js中的垃圾回收机制
前言js中的自动垃圾回收机制让我们可以不用关心内存管理,但在一些情况下会导致内存泄漏,js中的垃圾收集机制主要有两种方式。1.引用计数垃圾收集在内存管理的环境中,一个对象如果有访问另一个对象的权限(隐式或者显式),叫做一个对象引用另一个对象。例如,一个Javascript对象具有对它原型的引用(隐式引用)和对它属性的引用(显式引用)。在这里,“对象”的概念不仅特指 JavaScript ...原创 2019-06-19 11:59:08 · 893 阅读 · 0 评论 -
【JavaScript】常用方法记录
方法名作用备注全局方法parseInt(str,radix)将一个字符串基于radix解析为整数并返回。radix=10或8或16,分别代表十进制、八进制、十六进制,如果不传radix,则会根据字符串进行解析,比如如果字符串开始为ox则以十六进制解析。parseFloat(str)返回一个浮点数如果字符串不是以数字开头,则会返回NAN,字符串以空格开头不会...原创 2019-06-19 10:40:17 · 122 阅读 · 0 评论 -
前端面试题
https://segmentfault.com/a/1190000018719463https://godbmw.com/passages/2019-03-27-javascript-second/深拷贝和浅拷贝在JS中,函数和对象都是浅拷贝(地址引用);其他的,例如布尔值、数字等基础数据类型都是深拷贝(值引用)。ES6的Object.assign()和ES7的…解构运算符都是“浅拷贝”...原创 2019-06-19 10:39:06 · 279 阅读 · 0 评论 -
【JavaScript】js常见算法问题
字符串相关判断一个单词是否是回文字符串function test(str){ return str.split("").reverse().join("")===str}var str = "12212"console.log(test(str))在句子中反转词function test(str){ var temp = str.split(" ").map(fu...原创 2019-04-12 16:12:46 · 206 阅读 · 0 评论 -
【JavaScript】箭头函数与普通函数的区别
箭头函数除了在写法上与传统的function不同外,最主要的区别在于this的指向.箭头函数的this基于词法作用域,而普通函数的this基于上下文。通俗讲就是箭头函数的this一直指向编辑该函数时的作用域,而普通函数的this指向要基于调用它的上下文,看下面实例可能更容易理解//定义一个全局变量countervar counter = 2;//obj_arrow对象中的func方法返回...原创 2019-03-27 10:25:52 · 261 阅读 · 0 评论 -
【JavaScript】call()和apply()方法
定义:ECMAScript规范为所有函数都包含两个方法(这两个方法非继承而来), call 和 apply 。作用func.call(obj, arg1,arg2…),将func内部的this指向改变为指向objcall与apply的区别功能相同,区别在于传入参数的方式不同,call方法是将参数一个个的传入,而apply方法是接收一个参数数组例子用法1:改变this指向var a ...原创 2019-03-27 09:40:36 · 154 阅读 · 0 评论 -
javaScript String 类型
String类型是字符串的对象包装类型。一、String对象的每个实例都有一个length属性,表示字符串中包含多少个字符;二、String类型提供的方法1、charAt()、charCodeAt(),接受一个位置参数,前者返回该位置的字符,后者返回该位置的字符编码;2、concat(),拼接多个字符串,不会改变原字符串,实际中使用更多的还是加号操作符来拼接字符串var str1 = "hello...原创 2018-07-07 21:30:26 · 268 阅读 · 0 评论