zoukankan      html  css  js  c++  java
  • Mootools 1.4 官方网站的API使用说明存在错误

      今天有人在群里问为何给Number用extend扩展的时候总是出错,我记得前几天阅读Moo的源代码时好像发现Number好像是只能用implement来进行扩展,而extend似乎是给Function扩展用的,于是乎查了一下官方文档

    http://mootools.net/docs/core/Core/Core

    Type method: extend

    Adds one or more functions to the type. These are static functions that accept for example other types to parse them into the type, or other utility functions that belong to the certain type.
    Syntax:

    myType.extend(name, method);

    or

    myType.extend(methods);

    Arguments:

    name - (string) The method name.
    method - (function) The method function.

    or

    methods - (object) An object with key-value pairs. The key is the method name, the value is the method function.

    Returns:

    (object) The type.

    Examples:

    RegExp.extend('from', function(regexp, flags){
    return new RegExp(regexp, flags);
    });

    Number.extend('parseCurrency', function(currency){
    // takes a string and transforms it into a number to
    // do certain calculations
    });

    看到没,这是官方的原文,我测试了一下这段示例,运行结果是错误的,提示说:.parseCurrency is not a function

    下边是我的测试代码:

    Number.extend('parseCurrency', function(currency){
    alert(currency);
    });
    (1).parseCurrency('ff');

    出错提示是:

    (1).parseCurrency is not a function
    [在這個錯誤中斷] (1).parseCurrency('ff');


    通过这个错误就可以知道了,parseCurrency 并非是一个function,于是不死心再次阅读Moo的源码,发现Number确实只能用implement扩展.

    由此可见官方的文档是有错漏的.

    尽信书不如无书,希望初学Moo的朋友注意一下,不要被其误导了!

  • 相关阅读:
    笨蛋的厄运
    模仿写了一个摸鱼应用解决原作者的问题
    retain和copy还有assign的区别
    分析与理解通知消息WM_NOTIFY
    备忘录
    数据结构C++模板实现之单向链表
    服务器(VPS合租)
    复制构造,赋值操作符,const重要性
    Windows 注册表操作简介
    窗口类封装之窗口对象消息处理的映射方法(1)
  • 原文地址:https://www.cnblogs.com/see7di/p/2259455.html
Copyright © 2011-2022 走看看