JavaScript高级
文章平均质量分 61
是瑞瑞小甜心
这个作者很懒,什么都没留下…
展开
-
15、ES6语法
15、ES6语法学习目标能够说出使用let关键字声明变量的特点能够使用解构赋值从数组中提取值能够说出箭头函数拥有的特性能够使用剩余参数接收剩余的函数参数能够使用拓展运算符拆分数组能够说出模板字符串拥有的特性1.ES6相关概念1.1什么是ES6ES 的全称是 ECMAScript , 它是由 ECMA 国际标准化组织,制定的一项脚本语言的标准化规范。为什么使用 ES6 ?每一次标准的诞生都意味着语言的完善,功能的加强。JavaScript语言本身也有一些令人不满意的地方。变量原创 2021-12-15 19:15:57 · 105 阅读 · 0 评论 -
14、正则表达式
1.正则表达式概述1.1什么是正则表达式正则表达式( Regular Expression )是用于匹配字符串中字符组合的模式。在JavaScript中,正则表达式也是对象。正则表通常被用来检索、替换那些符合某个模式(规则)的文本,例如验证表单:用户名表单只能输入英文字母、数字或者下划线, 昵称输入框中可以输入中文(匹配)。此外,正则表达式还常用于过滤掉页面内容中的一些敏感词(替换),或从字符串中获取我们想要的特定部分(提取)等 。其他语言也会使用正则表达式,本阶段我们主要是利用JavaScript原创 2021-12-15 19:13:45 · 365 阅读 · 0 评论 -
13、递归
13、递归1.什么是递归递归:如果一个函数在内部可以调用其本身,那么这个函数就是递归函数。简单理解:函数内部自己调用自己, 这个函数就是递归函数注意:递归函数的作用和循环效果一样,由于递归很容易发生“栈溢出”错误(stack overflow),所以必须要加退出条件return。 // 递归函数 : 函数内部自己调用自己, 这个函数就是递归函数 var num = 1; function fn() { console.log('我要打印6句话原创 2021-12-15 19:11:17 · 44 阅读 · 0 评论 -
12、闭包
12、闭包1.变量的作用域复习变量根据作用域的不同分为两种:全局变量和局部变量。函数内部可以使用全局变量。函数外部不可以使用局部变量。当函数执行完毕,本作用域内的局部变量会销毁。2.什么是闭包闭包(closure)指有权访问另一个函数作用域中变量的函数。简单理解就是 ,一个作用域可以访问另外一个函数内部的局部变量。3.闭包的作用作用:延伸变量的作用范围。// 在 fn() 函数外面访问 fn() 中的局部变量 num function fn() { var num = 10原创 2021-12-15 19:10:36 · 76 阅读 · 0 评论 -
11、高阶函数
11、高阶函数高阶函数是对其他函数进行操作的函数,它接收函数作为参数或将函数作为返回值输出。<script>function fn(callback){ callback&&callback();}fn(function(){alert('hi')}</script><script>function fn(){ return function() {}}fn();</script>此时fn 就是一个高阶函数函数原创 2021-12-15 19:09:54 · 204 阅读 · 0 评论 -
10、严格模式
10、严格模式1.什么是严格模式JavaScript 除了提供正常模式外,还提供了严格模式(strict mode)。ES5 的严格模式是采用具有限制性 JavaScript变体的一种方式,即在严格的条件下运行 JS 代码。严格模式在 IE10 以上版本的浏览器中才会被支持,因为"use strict"加了引号,旧版本的浏览器会把它当作一行普通字符串而忽略严格模式对正常的 JavaScript 语义做了一些更改:消除了 Javascript 语法的一些不合理、不严谨之处,减少了一些怪异行为原创 2021-12-15 19:09:22 · 52 阅读 · 0 评论 -
9、this
1.函数内部的this指向this 指向是调用函数的时候确定的调用方式的不同决定了this 的指向不同一般指向调用者// 1. 普通函数 this指向window function fn() { console.log('普通函数的this' + this); } window.fn();// 2. 对象的方法 this指向对象 o var o = { sayHi: function(原创 2021-12-15 19:08:59 · 64 阅读 · 0 评论 -
8、函数的定义和调用
8、函数的定义和调用1.函数的定义方式方式1 函数声明方式 function 关键字 (命名函数)function fn(){}方式2 函数表达式(匿名函数)var fn = function(){}方式3 new Function()var f = new Function('a', 'b', 'console.log(a + b)');f(1, 2);var fn = new Function('参数1','参数2'..., '函数体')注意(1)Function 里面参原创 2021-12-14 22:01:56 · 219 阅读 · 0 评论 -
7、ES5 中的新增方法
ES5 中给我们新增了一些方法,可以很方便的操作数组或者字符串,这些方法主要包括:数组方法字符串方法对象方法数组方法1.forEach遍历数组基本语法: arr.forEach(function(value, index, array) { //参数一是:数组元素 //参数二是:数组元素的索引 //参数三是:当前的数组 }) //相当于数组遍历的 for循环 没有返回值代码演示: // forEach 迭代(遍历) 数组原创 2021-12-14 22:01:22 · 91 阅读 · 0 评论 -
6、 继承
ES6之前并没有给我们提供 extends 继承。我们可以通过构造函数+原型对象模拟实现继承,被称为组合继承。1.call()fun.call(thisArg, arg1, arg2, ...)// thisArg :当前调用函数 this 的指向对象// arg1,arg2:传递的其他参数call()可以调用函数call()可以修改this的指向,使用call()的时候 参数一是修改后的this指向,参数2,参数3使用逗号隔开 function fn(x, y) { con原创 2021-12-14 22:00:53 · 41 阅读 · 0 评论 -
5、 原型
5、原型1.构造函数的问题构造函数存在浪费内存问题2.构造函数原型prototypeJavaScript 规定,每一个构造函数都有一个prototype 属性,指向另一个对象。这个prototype就是一个对象,这个对象的所有属性和方法,都会被构造函数所拥有。我们可以把那些不变的方法,直接定义在 prototype 对象上,这样所有对象的实例就可以共享这些方法。一般情况下,公共属性定义到构造函数里面, 公共的方法放到原型对象身上function Star(uname, age) {f原创 2021-12-14 21:59:55 · 53 阅读 · 0 评论 -
3、面向对象版tab 栏切换
3、面向对象版tab 栏切换1 功能需求点击 tab栏,可以切换效果.点击 + 号, 可以添加 tab 项和内容项.点击 x 号, 可以删除当前的tab项和内容项.双击tab项文字或者内容项文字可以修改里面的文字内容2 案例准备获取到标题元素获取到内容元素获取到删除的小按钮 x号新建js文件,定义类,添加需要的属性方法(切换,删除,增加,修改)时刻注意this的指向问题3 切换为获取到的标题绑定点击事件,展示对应的内容区域,存储对应的索引 this.lis[i].in原创 2021-12-14 21:55:19 · 70 阅读 · 0 评论 -
2、类的继承
2、类的继承1.继承现实中的继承:子承父业,比如我们都继承了父亲的姓。程序中的继承:子类可以继承父类的一些属性和方法。语法:class Father{ // 父类}class Son extends Father { // 子类继承父类} 实例:class Father {constructor(surname) {this.surname= surname;}say() { console.log('你的姓是' + this.surname); }}class Son原创 2021-12-14 21:49:26 · 65 阅读 · 0 评论 -
1、面向对象编程介绍
1、面向对象编程介绍1.两大编程思想介绍1.1 面向过程编程 POP面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候再一个一个的依 次调用就可以了。面向过程,就是按照我们分析好了的步骤,按照步骤解决问题。1.2面向对象编程 OOP面向对象是把事务分解成为一个个对象,然后由对象之间分工与合作。面向对象是以对象功能来划分问题,而不是步骤。在面向对象程序开发思想中,每一个对象都是功能中心,具有明确分工。1.3面向过程与面向对象对比原创 2021-12-14 21:48:59 · 254 阅读 · 0 评论