javascript
文章平均质量分 91
皮皮停
再远的路,出发了,就会有到达的一天。
展开
-
正则表达式
描述字符描述字符分为普通字符和元字符。用于描述正则匹配规则的内容。普通字符即是数字字母和常用符号,用以描述自身。元字符具有代表一类字符的特殊字符。普通字符 var str = 'ac10_' var r = /ac/g console.log(str.match(r)) //["ac"] //在r表示的正则表达式中ac为特殊字符,只能匹配str字符串中的ac字符。元字符 // . :查找单个字符,除了换行和行结束符 var str = 'aZ1_?#原创 2021-02-02 10:35:14 · 167 阅读 · 0 评论 -
ES6模块化与commonJS的对比
javascript模块技术是让javascript这门语言通往工程化和编写大型应用的一块敲门砖,因为它彻底解决了js文件依赖混乱和全局变量污染的问题。什么是依赖混乱? 现在2个js文件:// a.jsvar a1 = function(){ // active code }var a2 = function(){ // active code }// b.jsvar b1 = function(){ // active code }v..原创 2020-12-26 00:20:19 · 284 阅读 · 1 评论 -
定义变量更好的方式
假如现在需要定义三个变量,最初的方式: //定义了三个全局变量 var a = function () {} var b = function () {} var c = 'c'以上定义变量有一个严重的缺陷,如果此时也有人在全局作用域定义a,b,c三个一样变量名,你和别人的变量就会冲突。把冲突的变量 变成局部变量方式一:对象收编 var obj = { ...原创 2020-04-26 17:10:16 · 155 阅读 · 0 评论 -
通过vue响应式原理,解释一些数据改变而不渲染的现象
现象在vue中,通过以下情况改变data,是不会渲染页面的:在对象中增加新元素和删除对象或属性通过索引赋值的方式给数组添加新元素或改变元素值通过改变length属性值,改变数组长度案例:<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <div id="ap...原创 2020-04-22 01:27:00 · 385 阅读 · 0 评论 -
如何解决onclick与onmousedown,onmouseup的冲突,取消默认事件
onclick是点击,一个完整的点击动作由按下鼠标键onmousedown,和弹起鼠标键onmouseup完成,所以很多时候,onclick事件和onmousedown,onmouseup混用的时候会出现冲突。如下案例: <script> document.onclick = function(e){ console.log('onc...原创 2020-04-02 00:53:01 · 4684 阅读 · 0 评论 -
事件冒泡、捕获?如何阻止
事件冒泡 <style> div{ color: white; font-size: 30px; } .content{ width: 400px; height: 400px; background-color...原创 2020-04-02 00:24:07 · 3464 阅读 · 0 评论 -
js如何给dom元素绑定事件,移除事件
拿点击事件举例:<script> var div = document.getElementsByTagName("div")[0] function test(){ console.log(1) } // 兼容性很好 div.onclick = test // 绑定事件 div.onclick = ''...原创 2020-04-01 21:33:53 · 3356 阅读 · 0 评论 -
dom元素对象常用的属性和原生js方法总结
getAttribute(prop)获取dom元素的属性值。 <div name="demo" id="demo" class="demo"> <!-- 我是注释 --> <span></span> </div> <script> var re...原创 2020-03-30 23:06:46 · 295 阅读 · 0 评论 -
原生js获取dom元素的方式总结
原生js获取元素只有两种方式:第一种是通过document对象内置的方法。第二种是通过document节点获取。方法可以结合节点的方式来获取元素。第一种:通过方法动态方法无论在何时获取元素,document中的对象如何变化,使用动态方法中获取的元素都是最新状态的。document.getElementById()通过元素的id获取,id元素的唯一标识。在IE8以下,id不...原创 2020-03-29 17:40:52 · 599 阅读 · 0 评论 -
两步让对象变数组
在javascript中,数组也是对象类型,但是真正意义上的对象和数组还是有区别,一般的json对象是不具备数组的方法和属性的。案例: //对象 var arr = { 0 : 'javascript', 1 : 'java', 2 : 'node' } // 数组 var arr1 = [ 0 : 'javascript', 1 : 'java', 2 : ...原创 2020-03-24 23:55:14 · 247 阅读 · 0 评论 -
ES3常用数组方法
增删系列方法:push(元素1,元素2,…,元素n)功能:往源数组的末端添加元素。返回值:添加元素后,源数组的长度。示例:var a = [1]a.push(2,3,4)console.log(a) //(4) [1, 2, 3, 4]unshift(元素1,元素2,…,元素n)功能:往源数组从首端添加元素。返回值:添加元素后,源数组的长度。示例:var a = ...原创 2020-03-24 00:32:15 · 407 阅读 · 0 评论 -
callee和caller的使用
calleecallee是arguments对象中的一个方法,功能是引用arguments所在的函数。案例://命名函数function fn(){console.log(arguments.callee)}fn()结果如下://ƒ fn(){console.log(arguments.callee)}//匿名函数(function(){console.log(argume...原创 2020-03-22 17:23:42 · 272 阅读 · 0 评论 -
js函数中的形参,实参和arguments对象
形参:形式参数,是函数作用域内的变量。实参:调用函数时,传入的参数,有对应的形参时,实参会赋值给形参。案例:var MyF = function(a){} //a为形参MyF(1) //1为实参在javascript中的函数中,有如下一些规则:1.实参传入个数和形参设置数量都是自定义的。实参传多或者传少都是允许的,实参不是非必传,形参也不是非必设,原理和变量的定义和赋值一样。...原创 2020-03-22 14:36:53 · 1113 阅读 · 0 评论 -
js中hasOwnProperty和instanceof的使用
hasOwnPropertyhasOwnProperty方法是用来判断某个属性是否是属于自身对象的,该方法仅用于判断自身对象,不会查找原型链。案例如下:Person.prototype.name = '原型'Person.prototype.myFc = function(){}function Person(){ this.age = 18 this.myFc = funct...原创 2020-03-22 00:40:40 · 514 阅读 · 0 评论 -
解析Js中&和&&、|和||运算符的区别和运算过程
&运算符先在浏览器控制台,举个例子:为什么 234 & 456 打印的结果是200?&的运算步骤:先把234,456两个十进制的数字转换成二进制分别为:11101010,111001000把11101010补齐八位与111001000位数相同,为011101010比较011101010和111001000,对应位数上数字相同记相同的数,不同则为0,得出得结果...原创 2020-03-18 12:35:44 · 369 阅读 · 0 评论 -
js对象的构造函数与原型
从__proto__属性说起我们都知道,javascript创建对象一般有两种方式:方式一:通过字面量创建,例如:var obj = {} //创建一个空对象var obj1 = { name :'js'} //创建带属性的对象方式二:通过new关键字,如://内置构造函数var numObj = new Number(3) //创建一个number对象//自定义构造函数fu...原创 2020-03-21 01:22:06 · 179 阅读 · 0 评论 -
搞懂Js中的this,call和apply方法
为了更好的看懂这篇文章,建议先要理解js对象的原型和原型链相关的知识,若不了解,可以看上一篇文章《js对象的构造函数与原型》this的理解在全局中使用this,this为window对象谁调用了对象中属性,this就是谁this.xxx调用属性的时候,会沿着原型链查找xxx属性案例如下: var width = 200,name = 'window' Object.prototy...原创 2020-03-21 20:12:52 · 355 阅读 · 0 评论