zoukankan      html  css  js  c++  java
  • JavaScript传递对象参数到方法里的另一种方法(对象字面量)

    方法函数:

        function sendMessage(sMsg,oObj) {
           
    if (arguments.length == 2) {
               oObj.handleMsg(sMsg);
               oObj.test();
           } 
    else {
               alert(sMsg);
           };
        }

        sendMessage(
    "Hello world!");

    普通的方法传递:

        function obj() {
        }

        obj.prototype.handleMsg 
    = function(sMsg) {
            alert(
    "This is a custom message: " + sMsg);
        };
        obj.prototype.test 
    = function() {
            alert(
    "test");
        };

        sendMessage(
    "asdfsdasdfdfa"new obj);

    另一种方法(对象字面量):

        //这里传进去了两个参数,第二个为一个对象。
         //该对象有一个方法handleMsg()
        sendMessage("How are you?", { 
            handleMsg: 
    function(sMsg) { 
               alert(
    "This is a custom message: " + sMsg);
            },                       
            test: 
    function(){
                alert(
    "test");
            }
        });

    对这样的方法传递不是很理解,不过也可以。牛人给指点一下

    补充:

    这种方法在《深入浅出JavaScript》中被称为对象字面量

    创建对象的方法:
        
    var obj = new object();
        obj.
    var = "asdf";
        obj.click 
    = function(){
        alert(
    "asdfas");
        };
    等价于
        
    var obj = {
        val:
    "asdf",
        click: 
    function(){
            alert(
    "asdfa");
        }
        };

    这样就对上面的用法理解了。

  • 相关阅读:
    Hadoop1重新格式化HDFS
    centos6.5之Hadoop1.2.1完全分布式部署安装
    Mybatis延迟加载和查询缓存
    剑指offer面试题7:用两个栈实现队列
    Mybatis输入输出映射
    Mybatis开发Dao
    Mybatis入门程序
    SpringMVC系列之URL匹配问题
    SpringMVC系列之主要组件
    mysql学习笔记(三)
  • 原文地址:https://www.cnblogs.com/icebutterfly/p/1588851.html
Copyright © 2011-2022 走看看