JavaScript
@_未命名
从事java web 开发。
知道的越多,不知道的就越多。
展开
-
ES6中的箭头函数、剩余参数、扩展运算符
箭头函数箭头函数是用来简化函数定义语法的const fn = () => { console.log(2132);}fn();函数体中只有一句代码,并且代码的执行结果就是返回值,可以省略大括号const sum = (num1,num2) => num1 + num2;如果形参只有一个,可以省略小括号const fn = (v) => { alert(v);}fn(20);const fn2 = v => { alert(v);}fn(30原创 2020-09-02 23:17:29 · 167 阅读 · 0 评论 -
ES67的解构赋值
ES6允许从数组中提取值,按照对应位置对变量赋值。对象也可以实现解构。按照一定的模式,从数组或者对象中提取值,将提取出来的值赋值给变量数组解构let [a,b,c] = [1,2,3]console.log(a);console.log(b);console.log(c);如果结构不成功,变量的值为undefinedlet [a,s,d,f] = [11,22,33];console.log(a);//11console.log(s);//22console.log(d);//33原创 2020-09-02 17:45:26 · 162 阅读 · 0 评论 -
JavaScript中正则表达的使用
什么是正则表达式正则表达式(Regular Expression)是用于匹配字符中的字符组合的模式,在JavaScript中,正则表达式是对象作用:匹配:验证表单替换:过滤敏感词提取:从字符串中获取想要的特定部分// /表达式/ var regexp = new RegExp(/asd/);var rg = /asd/;test() 正则对象方法,用于检测字符串是否符合该规则,该对象会返回true或false,参数是测试字符串regexObj.test(str)...原创 2020-09-02 16:56:29 · 154 阅读 · 0 评论 -
JavaScript浅拷贝和深拷贝详解
浅拷贝只是拷贝一层,更深层次对象级别的只拷贝引用深拷贝拷贝多层,每一级别的数据都会拷贝Object.assgin(target,…sources) ES6新增方法可以浅拷贝浅拷贝var obj = { id :1, name : '蜘蛛侠', msg : { age: 20 }}var o = {};//方法一for (var i in obj){ o[i] = obj[i];}//方法2Object.assign(o,ibj);//浅拷贝第一层之外的更深层只是拷贝.原创 2020-08-29 18:56:34 · 148 阅读 · 0 评论 -
JavaScript 中的递归函数详解
如果一个函数在内部可以调用本身,,那个这个函数就是递归函数。递归函数的作用和循环的效果一样递归很容易发生“栈溢出"Stack overflow 错误,所以必须要添加退出条件returnvar num = 1;function fn(){ console.log('打印hello'); if(num == 6){ return; } num++; fn();}fn();利用递归函数求1-n的阶乘12345…nfunction fn(n){ if(n== 1) { re原创 2020-08-28 18:02:06 · 876 阅读 · 1 评论 -
javaScript 中的严格模式
ES5的严格模式是采用具有限制性javaScript变体的一种方式,即在严格的条件下运行。IE10以上支持,旧版本会被忽略。特点:消除了JavaScript语法的一些不合理、不严谨之处消除代码运行中的不安全之处,保证运行安全提高编译器效率,增加运行速度。禁用了在ECMScript的未来版本中可能会定义的一些语法,如一些保留字不能做变量名(class、enum、export、extends、import、super)严格模式可以应用到整个脚本或者个别函数中为脚本开启严格模式原创 2020-08-06 11:28:18 · 157 阅读 · 0 评论 -
js 继承父构造函数的属性和方法
ES6之前没有extends,可以通过构造函数 + 原型对象实现继承,叫组合继承call()调用这个函数,并修改函数运行时this指向fun.call(thisArg,aeg1,aeg2....)thisArg 调用函数的this的指向对象aeg1,aeg2 传递参数调用函数function fn(x,y){ console.log(this); console.log(x + y);}var star = { name : "刘德华"} fn.call(.原创 2020-07-27 16:41:18 · 336 阅读 · 0 评论 -
javaScript 中this 的指向及改变this指向
函数内this指向this的指向是在函数调用的时候决定的,调用方式不同决定了指向不同,一般都指向调用者。普通函数 指向window,window为普通函数的调用者,window.fun();对象方法的调用指向该对象。构造函数调用指向实例对象,原型对象里面的方法也指向实例对象事件绑定函数指向绑定事件对象定时器函数和立即执行函数 都指向window改变函数内部this的指向javaScript 提供了一些方法能改变this的指向,常用的有bind(),call(),apply()call原创 2020-07-22 10:12:04 · 76 阅读 · 0 评论 -
ES6面向对象和类Class,及属性和方法
什么是对象对象是为了描述显示世界中的事物,事物本身的或者是赋予事物的属性和行为,像生活中的事物一样,js中创建的对象由数据和方法组成,也就是属性和行为。JS中的函数、数组、等都可以理解为是一个对象。对象会有抽象、封装、继承、多态的特征。由class 关键字声明个类,之后以这个类通过new关键字实例化对象。类是抽象了对象的公共部分,是泛指的某一大类。对象是特指的某一个,通过类实例化一个具体的对象。特点是抽象对象共有的属性和行为封装成为一个类,对类实例化,获取类的对象class Star{ .原创 2020-07-22 10:09:53 · 378 阅读 · 0 评论 -
ES6 类的继承,this 的指向,super关键字的使用
继承:子类可以继承父类的一些属性和方法<body> <button>加法 </button><script>var that;class Father{//父类 constructor(x,y){ that = this; this.x=x; this.y=y; this.btn=document.querySelector('button');.原创 2020-07-21 16:40:12 · 827 阅读 · 0 评论 -
JavaScript中什么是闭包?
闭包变量作用域根据作用域不同分为:全局变量和局部变量1.函数内部可以使用全局变量2.函数外部不可以使用局部变量3.当函数执行完毕,本作用域内的局部变量会销毁什么是闭包闭包指有权访问另一个函数作用域中变量的函数。–JavaScript高级程序设计可以理解为:一个作用域可以访问另外一个函数内部的局部变量。function fn(){ var num = 10; function fun(){ console.log(num ) } fun();}fn();//fn原创 2020-07-21 16:33:44 · 100 阅读 · 0 评论