iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >javascript面向对象编程的知识点有哪些
  • 812
分享到

javascript面向对象编程的知识点有哪些

2023-06-29 04:06:58 812人浏览 八月长安
摘要

这篇文章主要介绍了javascript面向对象编程的知识点有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇javascript面向对象编程的知识点有哪些文章都会有所收获,下面我们一起来看看吧。函数的定义和使

这篇文章主要介绍了javascript面向对象编程的知识点有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇javascript面向对象编程的知识点有哪些文章都会有所收获,下面我们一起来看看吧。

函数的定义和使用

这一板块的内容主要是对之前Jquery的复习,复习了:函数的定义方法、函数的调用方法。

this指向问题

这一模块的内容主要是学习不同函数中this指向的对象是谁、改变函数内部this的指向方法:callapplybind

改变函数内部this的指向方法:callapplybind

这三个方法共同点:都能改变this的指向;

这三个方法不同点:

  • call和apply会调用函数,并且改变函数内部this指向;

  • call和apply传递的参数不一样,call传递参数使用逗号隔开,apply使用数组传递;

  • bind不会调用函数,可以改变函数内部this指向。

严格模式

这一模块的内容主要是学习了解什么是严格模式。

严格模式定义:ES5 的严格模式是采用具有限制性 JavaScript变体的一种方式,即在严格的条件下运行 js 代码。(严格模式在 IE10 以上版本的浏览器中才会被支持,旧版本浏览器中会被忽略。)

开启严格模式

  • 为脚本开启严格模式;

  • 为函数开启严格模式。

高阶函数

这一模块的内容主要是学习高阶函数的定义与相关应用。

高阶函数定义:高阶函数是对其他函数进行操作的函数,它接收函数作为参数或将函数作为返回值输出。

最好理解的就是回调函数,它就是高阶函数。

闭包

这一模块的内容主要是学习闭包的定义、闭包的作用、闭包的运用。

闭包定义:闭包(closure)指有权访问另一个函数作用域中变量的函数。简单理解就是 ,一个作用域可以访问另外一个函数内部的局部变量。

闭包作用:延申了变量的作用范围。

闭包的运用:

点击li打印当前索引

<body>    <ul class='nav'>        <li>榴莲</li>        <li>臭豆腐</li>        <li>鲱鱼罐头</li>        <li>大猪蹄子</li>    </ul></body><script>    // 原始获得索引号的方法    var lis = document.querySelector(".nav").querySelectorAll("li");    for (var i = 0; i < lis.length; i++) {        lis[i].index = i;        lis[i].onclick = function() {             console.log(this.index);        }    }     // 闭包的定义:指有权访问另一个函数作用域中变量的函数。简单理解就是 ,一个作用域可以访问另外一个函数内部的局部变量。      // 需求:利用闭包来得到li的索引号    var lis = document.querySelector(".nav").querySelectorAll("li");     for (var i = 0; i < lis.length; i++) {        (function(i) {            // console.log(i);            lis[i].onclick = function() {                console.log(i); //我们为了点击时才会出现i            }        })(i);    }</script>

3s后打印li里面的内容

<body>    <ul class='nav'>        <li>榴莲</li>        <li>臭豆腐</li>        <li>鲱鱼罐头</li>        <li>大猪蹄子</li>    </ul> </body><script>    // 利用闭包来得到li的索引号    var lis = document.querySelector(".nav").querySelectorAll("li");     for (var i = 0; i < lis.length; i++) {        (function(i) { //这是立即执行函数            // 简单来说就是把定时器放在立即执行函数里面            setTimeout(function() { //在立即执行函数里的任何一个函数都可以调用立即执行函数里的变量                console.log(lis[i].innerhtml);            }, 2000)        })(i);    }</script>

打车价格的计算应用

 <!-- 需求:打车起步价13(3公里内),  之后每多一公里增加 5块钱.  用户输入公里数就可以计算打车价格如果有拥堵情况,总价格多收取10块钱拥堵费 --><script>    var car = (function() { //立即执行函数        var start = 13; //起步价        var total = 0; //总价        return {            price: function(n) {                if (n <= 3) {                    total = start;                } else {                    total = start + (n - 3) * 5;                }                return total;            },            yd: function(flag) {                    return flag ? total + 10 : total;                } //拥堵的费用        }    })();    car.price();    console.log(car.price(5));    console.log(car.yd(true));</script>

递归

这一模块的内容主要是学习递归的定义、递归的运用。

递归的定义:如果一个函数在内部可以调用其本身,那么这个函数就是递归函数。简单理解:函数内部自己调用自己, 这个函数就是递归函数。

注意:递归函数的作用和循环效果一样,由于递归很容易发生“栈溢出”错误(stack overflow),所以必须要加退出条件return

递归的运用:

求1~n的阶乘

<script>    function fn(n) {        if (n == 1) {            return 1; //判断条件来退出        }        return n * fn(n - 1); //思路:前一项*后一项        // 利用return来调用函数本身    };    // fn(); //递归类似于循环;自己调用自己    console.log(fn(4));</script>

求斐波那契数列

 <script>        // 1、1、2、3、5、8、13、21...当用户输入n的值来得到在斐波那契数列中的值         function fb(n) {            if (n === 0 || n === 1 || n === 2) {                return 1;            } else {                return fb(n - 1) + fb(n - 2); //规律:当用户输入n我们得到(n-1)和(n-2)这两项就能计算出n、对应的序列值            }         }        console.log(fb(0));        console.log(fb(4));    </script>

递归遍历数据

&lt;script&gt;    var data = [{        id: 1,        name: '家电',        Goods: [{            id: 11,            gname: '冰箱'        }, {            id: 12,            gname: '洗衣机'        }]    }, {        id: 2,        name: '服饰'    }];    // 效果:我们想要输入id号就可以返回的数据对象(利用递归来遍历)    // 1.利用forEach 去遍历里面的每一个对象    function getID(JSON, id) { //json就是一整个大的数组        json.forEach(function(item) { //item就是data里面的id            if (item.id == id) {                console.log(item);                //             } else if (item.goods &amp;&amp; item.goods.length &gt; 0) {                // 2.遍历对象里面的对象11 12 可以利用递归函数(调用自己getID(对象里面的对象item.goods,id))                // 里面应该有goods这个数组并且数组的长度不为0                getID(item.goods, id);            }        });    }    getID(data, 1);    getID(data, 2);    getID(data, 11);&lt;/script&gt;

正则表达式

这一模块的内容主要是学习正则表达式定义、正则表达式在js中的使用。

关于“javascript面向对象编程的知识点有哪些”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“javascript面向对象编程的知识点有哪些”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网精选频道。

--结束END--

本文标题: javascript面向对象编程的知识点有哪些

本文链接: https://www.lsjlt.com/news/322647.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • javascript面向对象编程的知识点有哪些
    这篇文章主要介绍了javascript面向对象编程的知识点有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇javascript面向对象编程的知识点有哪些文章都会有所收获,下面我们一起来看看吧。函数的定义和使...
    99+
    2023-06-29
  • Python面向对象知识点有哪些
    今天就跟大家聊聊有关Python面向对象知识点有哪些,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。类: 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性...
    99+
    2023-06-17
  • Python面向对象编程最容易忽视的知识点有哪些
    这篇文章主要介绍“Python面向对象编程最容易忽视的知识点有哪些”,在日常操作中,相信很多人在Python面向对象编程最容易忽视的知识点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python面向对...
    99+
    2023-06-02
  • Python面向对象编程知识点总结
    这篇文章主要讲解了“Python面向对象编程知识点总结”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python面向对象编程知识点总结”吧!面向对象编程和函数式编程(面向过程编程)都是程序设...
    99+
    2023-06-16
  • JAVA 面向对象之多态的知识点有哪些
    本篇内容介绍了“JAVA 面向对象之多态的知识点有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. 概念多态是面向对象程序设计(OOP...
    99+
    2023-07-02
  • C#中面向对象的相关知识点有哪些
    本篇内容介绍了“C#中面向对象的相关知识点有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!switch和字典前文提到过,有个游戏里面有个...
    99+
    2023-07-05
  • java数组和面向对象的知识点有哪些
    这篇文章主要介绍“java数组和面向对象的知识点有哪些”,在日常操作中,相信很多人在java数组和面向对象的知识点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java...
    99+
    2024-04-02
  • JavaScript对象的基础知识点有哪些
    这篇文章给大家分享的是有关JavaScript对象的基础知识点有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1 、对象的基础1.1 类型JavaScript有六种主要语言类...
    99+
    2024-04-02
  • Delphi中的面向对象编程有哪些特点
    封装:对象可以封装数据和方法,使得数据的访问受到限制,只能通过对象提供的方法进行访问。 继承:可以通过继承机制,从一个基类派...
    99+
    2024-03-13
    Delphi
  • Java对象的知识点有哪些
    这篇文章主要讲解了“Java对象的知识点有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java对象的知识点有哪些”吧!问题的复杂性直接取决于抽象的类型和质量,同一个问题,如果抽象的方法...
    99+
    2023-06-03
  • JavaScrpt的面向对象知识点整理
    这篇文章主要介绍“JavaScrpt的面向对象知识点整理”,在日常操作中,相信很多人在JavaScrpt的面向对象知识点整理问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Ja...
    99+
    2024-04-02
  • JavaScript面试的知识点有哪些
    这篇“JavaScript面试的知识点有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“...
    99+
    2024-04-02
  • JavaScript面试知识点有哪些
    这篇文章主要介绍了JavaScript面试知识点有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇JavaScript面试知识点有哪些文章都会有所收获,下面我们一起来看看吧。...
    99+
    2024-04-02
  • “PHP面向对象编程必备知识点:深入理解对象和类”
    对象是具有状态和行为的实体。在PHP中,对象是使用类创建的。类是对象蓝图,它定义了对象的状态和行为。类可以包含属性、方法和构造函数。 属性是对象的变量,它们存储对象的状态。方法是对象的函数,它们定义对象的行为。构造函数是类的特殊方法,它在...
    99+
    2024-02-25
    1. 对象和类
  • VB.NET面向对象编程的特性有哪些
    这篇文章主要为大家展示了“VB.NET面向对象编程的特性有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“VB.NET面向对象编程的特性有哪些”这篇文章吧。类在VB.NET面向对象编程技术中,...
    99+
    2023-06-17
  • VB面向对象的优点有哪些
    本篇内容主要讲解“VB面向对象的优点有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“VB面向对象的优点有哪些”吧!面向对象这个词语对于搞开发的程序员所熟悉,在JAVA中最能体现面向对象这个词...
    99+
    2023-06-17
  • Python面向对象:杂七杂八的知识点
    为什么有这篇"杂项"文章 实在是因为python中对象方面的内容太多、太乱、太杂,在写相关文章时比我所学过的几种语言都更让人"糟心",很多内容似独立内容、又似相关内容,放这也可、放那也可、放这也不好、放那也不好。 所以,用一篇单独的文章来...
    99+
    2023-01-30
    知识点 面向对象 Python
  • Socket编程的知识点有哪些
    这篇文章主要介绍“Socket编程的知识点有哪些”,在日常操作中,相信很多人在Socket编程的知识点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Socket编程的知识点有哪些”的疑惑有所帮助!接下来...
    99+
    2023-06-17
  • JavaScript编码规范知识点有哪些
    这篇文章主要介绍“JavaScript编码规范知识点有哪些”,在日常操作中,相信很多人在JavaScript编码规范知识点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”...
    99+
    2024-04-02
  • VB.NET面向对象编程的优点
    这篇文章主要介绍“VB.NET面向对象编程的优点”,在日常操作中,相信很多人在VB.NET面向对象编程的优点问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”VB.NET面向对象编程的优点”的疑惑有所帮助!接下来...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作