iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > VUE >javascript中公有方法和私有方法怎么用
  • 349
分享到

javascript中公有方法和私有方法怎么用

2024-04-02 19:04:59 349人浏览 泡泡鱼
摘要

这篇文章主要介绍“javascript中公有方法和私有方法怎么用”,在日常操作中,相信很多人在javascript中公有方法和私有方法怎么用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望

这篇文章主要介绍“javascript中公有方法和私有方法怎么用”,在日常操作中,相信很多人在javascript中公有方法和私有方法怎么用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”javascript中公有方法和私有方法怎么用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

在javascript中,公有方法是指能被外部访问并调用的方法;而私有方法是指在对象的构造函数里声明,外部不可见且不可访问的方法。

教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

一:公有方法

公有方法就是能被外部访问并调用的方法

// 对象中
var test1 = {
    name:'大白',
    getName:function(){
        console.log(this.name);
    }
}
//调用
test1.getName();//大白

// 构造函数中
function test2(name,age){
    this.name = name;
    this.age = age;
    //公有方法
    this.getName = function(){
        console.log(this.name);
    }
}
// 在原型中
test2.prototype.getAge = function(){
    console.log(this.age);
}
//调用
var test3 = new test2('小白',12);
test3.getName();//小白
test3.getAge();//12

二:私有方法和公有方法

特权方法是指有权访问内部私有属性和私有方法的公有方法(能够访问私有方法,私有属性的方法叫特权方法,也是公有方法的一种)

私有方法是指在对象的构造函数里声明,外部不可见且不可访问的方法。

使用不同方式定义私有方法和特权方法的形式不同

在对象中我们通过Object对象表达式来创建一个对象并添加一些属性和方法,然后直接采用静态的方式调用。如Rest.getName();

立即执行函数对象的私有数据放置在一个匿名函数立即执行表达式(IIFE)中,这意味着这个函数只存在于被调用的瞬间,一旦执行后就立即被销毁了

var yourObject = (function() {

 // 私有属性和方法
 return {
 // 公有方法和属性
 }
}) ();

这里和前面的定义Rest一样啊,可以通过yourObject直接的访问。这样的模块化的访问还是比较的厉害的。

var test4 = (function(){
    //私有属性
    var total = 10;
    // 私有方法
    var buy = function(){
        total--;
    }
    var get = function(){
        return total;
    }
    return {
        name:'小白白',
        getTotal:get,//使用了闭包的方式来简介使用内部私有变量
        buyfood:buy
    }
})();
test4.buyfood();
console.log(test4.name);//小白白
console.log(test4.getTotal());//9

使用了闭包的方式来间接使用内部私有变量

构造函数中定义私有属性和方法很方便,我们不需要使用闭包,可以在调用的时候初始化数据

// 构造函数中

function test5(name) {
 // 私有属性
 var total = 10;

 // 公有属性
 this.name = name;

 // 私有方法
 function _buyFood() {
    total--;
 }

 // 特权方法,才能访问私有的属性和私有的方法
 this.buy = function() {
     _buyFood();
 }

 this.getTotal = function() {
    return total;
 }
}

// 公有方法, 注意这里不能访问私有成员_total
test5.prototype.getName = function() {
    //console.log(_total); // Uncaught ReferenceError: _total is not defined
    return this.name;
}

var test6 = new test5('大小白');
console.log(test6.getName()); // '大小白'
test6.buy();
console.log(test6.getTotal()); // 9

结合使用

使用构造函数方式可以传入一些初始化的数据,但在公有方法中无法访问到私有成员属性,如果有很多公有方法需要访问私有数据,我们全部用特权方法来写,最后会给每个实例带去很多没有必要的方法。

var test7 = (function(){
    // 私有属性
    var total = 10;

    // 私有方法
    function buyFood(){
        total--;
    }
    // 构造函数
    function test7(name){
        this.name = name;
        this.getTotal = function(){
            return total;
        }
    }
    // 公有方法  这里不是test7内部的私有
    test7.prototype.buy = function(){
        console.log(total);
        buyFood();
    }
    test7.prototype.getName = function(){
        return this.name;
    }
    return test7;
})();
var test0 = new test7('大大白');
console.log(test0.getName());//大大白
test0.buy();//10
console.log(test0.getTotal());//9

到此,关于“javascript中公有方法和私有方法怎么用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: javascript中公有方法和私有方法怎么用

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

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

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

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

下载Word文档
猜你喜欢
  • javascript中公有方法和私有方法怎么用
    这篇文章主要介绍“javascript中公有方法和私有方法怎么用”,在日常操作中,相信很多人在javascript中公有方法和私有方法怎么用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望...
    99+
    2022-10-19
  • 怎么在javascript中定义私有方法
    怎么在javascript中定义私有方法?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。JavaScript有什么特点1、js属于一种解释性脚本语言;2、在绝大多...
    99+
    2023-06-14
  • python中的私有属性和私有方法是什么
    这篇文章给大家介绍python中的私有属性和私有方法是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。私有权限面向对象三大特性:封装、继承、多态封装的意义:将属性和方法放到一起做为一个整体,然后通过实例化对象来处理;...
    99+
    2023-06-14
  • 如何在python中使用私有属性和私有方法
    本篇文章给大家分享的是有关如何在python中使用私有属性和私有方法,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Python的优点有哪些1、简单易用,与C/C++、Java、...
    99+
    2023-06-14
  • php怎么访问私有方法
    这篇文章主要介绍了php怎么访问私有方法的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇php怎么访问私有方法文章都会有所收获,下面我们一起来看看吧。在面向对象编程中,私有方法是一个对象的一部分,并且不能直接从对...
    99+
    2023-07-05
  • JavaScript中Class私有属性与私有方法的示例分析
    小编给大家分享一下JavaScript中Class私有属性与私有方法的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!pr...
    99+
    2022-10-19
  • python私有属性和方法怎么获取
    今天小编给大家分享一下python私有属性和方法怎么获取的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来...
    99+
    2022-10-19
  • Java9中接口的私有方法怎么使用
    本篇内容介绍了“Java9中接口的私有方法怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Java 8 之前版本Java 8 之前 ,...
    99+
    2023-07-06
  • PHP私有静态方法怎么定义和使用
    这篇文章主要介绍“PHP私有静态方法怎么定义和使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“PHP私有静态方法怎么定义和使用”文章能帮助大家解决问题。什么是私有静态方法?在PHP面向对象编程中,...
    99+
    2023-07-05
  • PowerMock使用-Mock私有方法
    前言 本篇文章将说明如何使用PowerMock对私有方法进行Mock。关于使用PowerMock需要引入哪些依赖,请参考PowerMock使用-依赖准备。 正文 被测试类如下所示。 public cl...
    99+
    2023-09-16
    java 单元测试 PowerMock Mock私有方法
  • python基础知识之私有属性和私有方法
    私有权限 面向对象三大特性:封装、继承、多态 封装的意义: 将属性和方法放到一起做为一个整体,然后通过实例化对象来处理; 隐藏内部实现细节,只需要和对象及其属性和方法交互就...
    99+
    2022-11-11
  • Java怎么通过反射获取私有构造、私有对象、私有字段、私有方法
    这篇文章主要介绍了Java怎么通过反射获取私有构造、私有对象、私有字段、私有方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Java反射获取私有构造、私有对象、私有字段、私...
    99+
    2023-06-22
  • JavaScript中find()和findIndex()方法有什么用
    小编给大家分享一下JavaScript中find()和findIndex()方法有什么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一...
    99+
    2022-10-19
  • 浅析gitee把私有库改为公开库的方法
    随着代码托管平台 Gitee 的持续发展,越来越多的开发者选择在 Gitee 上存储和管理他们的代码。但在 Gitee 上,有些用户可能会遇到一个问题,那就是如何把私有库改为公开的?本文将为大家详细介绍这一问题的解决方法。首先我们需要知道,...
    99+
    2023-10-22
  • java中Object有哪些公用方法
    小编给大家分享一下java中Object有哪些公用方法,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!Object有哪些公用方法?clone() 创建斌返回此对象的副本equals() 判断...
    99+
    2022-10-19
  • javascript中date方法有什么用
    小编给大家分享一下javascript中date方法有什么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! ...
    99+
    2022-10-19
  • JavaScript中call方法有什么用
    这篇文章将为大家详细讲解有关JavaScript中call方法有什么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、call可以调用这个函数并且修改函数运行时this...
    99+
    2022-10-19
  • javascript中prototype方法有什么用
    这篇文章主要为大家展示了“javascript中prototype方法有什么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“javascript中prototy...
    99+
    2022-10-19
  • javascript中push()方法有什么用
    这篇文章将为大家详细讲解有关javascript中push()方法有什么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 javascript...
    99+
    2022-10-19
  • javascript中random方法有什么用
    这篇文章主要介绍javascript中random方法有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! javascript random方法用于返...
    99+
    2022-10-19
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作