products/sources/formale sprachen/Delphi/Autor 0.7/Hilfetexte/files image not shown  

Quellcode-Bibliothek

© Kompilation durch diese Firma

[Weder Korrektheit noch Funktionsfähigkeit der Software werden zugesichert.]

Datei:   Sprache: JAVA

/***************************************************************************
 *   Copyright (C) 2007 by Vladimir Kadalashvili                                        *
 *   [email protected]                                                   *
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 *   This program is distributed in the hope that it will be useful,       *
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
 *   GNU General Public License for more details.                          *
 *                                                                         *
 *   You should have received a copy of the GNU General Public License     *
 *   along with this program; if not, write to the                         *
 *   Free Software Foundation, Inc.,                                       *
 *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
 ***************************************************************************/

 
/*
A simple jQuery plugin for varios manipulations with arrays
*/


jQuery.richArray = {

    /*
        Checks whether an array contains some value
@param {Array} array - an array in which we search for a value
@param {Mixed} value - the value we search for
@return {boolean} true if the array contains the value, otherwise false
    */

    
    isin: function(array, value) {
        array = jQuery.richArray.getArray(array);
 value = value || 0;
 
        for (var i = 0, len = array.length; i < len; ++i) {
  //if (array[i]== value) {
  //HND Patch
     if (array[i][0] == value[0]) {
         return true;
     }
 }
 
 return false;
    },
    
    /*
        Produces the duplicate-free version of the array
@param {Array} array
@returns {array}  - an array without duplicates
    */

    unique: function(array) {
        array = jQuery.richArray.getArray(array);
        var result = [];
 
 for (var i = 0, len = array.length; i < len; ++i) {
     if (!jQuery.richArray.isin(result, array[i])) {
         result.push(array[i]);
     }
 }
 
 return result;
    },
    
    /*
        Finds the difference between two arrays.
@param {Array} array1 
@param {Array} array2
@return {Array} array of values which are present in the first array, but not in the second
    */

    
    diff: function(array1, array2) {
        array1 = jQuery.richArray.getArray(array1);

 array2 = jQuery.richArray.getArray(array2);
 
 var result = [];
 
 for (var i = 0, len = array1.length; i < len; ++i) {
     if (!jQuery.richArray.isin(array2, array1[i])) {
         result.push(array1[i]);
     }
 }
 
 return result;
    },
    
    /*
        Finds the intersection of two arrays
@param {Array} array1
@param {Array} array2
@return {Array} - the array of values wich are present in both arrays
    */

    
    intersect: function(array1, array2) {
        array1 = jQuery.richArray.getArray(array1);  
 array2 = jQuery.richArray.getArray(array2);
 
 var result = [];
 
 for (var i = 0, len = array1.length; i < len; ++i) {
     if (jQuery.richArray.isin(array2, array1[i])) {
         result.push(array1[i]);
     }
 }  
 
 return result;
    },
    
    /*
        Applies filter to the array, using callback function
@param {Array} array - an array which we apply filter to
@param {Function} fn - the filter function. If it returns the value that may be evaluated as TRUE, the value will be included to the returned array.
@param {Object} scope - the scope of the callback function. Default is jQuery.richArray
@returns {Array} - an array of values for which callback function returned true 
    */

    
    filter: function(array, fn, scope) {
        array = jQuery.richArray.getArray(array);
 fn = jQuery.richArray.getFunction(fn); 
 scope = scope || this
  
 var result = [];
 
 for (var i = 0, len = array.length; i < len; ++i) {
     if (fn.call(scope, array[i])) {
         result.push(array[i]);
     }
 } 
 
 return result; 
    },
    
    /*
        Applies callback function for each element in the input array, and returns array of values that this function returned
@param {Array} array - an array which we should apply callback to
@param {Function} fn - callback function
@param scope - the scope of the callback function. Default is jQuery.richArray
    */

    map: function(array, fn, scope) {
        array = jQuery.richArray.getArray(array);
 fn = jQuery.richArray.getFunction(fn);
 scope = scope || this;
 
 result = [];
 
 for (var i = 0, len = array.length; i < len; ++i) {
     result.push(fn.call(scope, array[i]));
 }
 
 return result;
    },
    
    /*
        Computes the sum of all array elements.
@param {Array} array - an array we should compute the sum for
@param {Mixed} init - the initial value of the sum. Default is 0.
@returns {Mixed} the sum of all elements of the input array
    */

    
    sum: function(array, init) {
        array = jQuery.richArray.getArray(array);
 init = init || 0;
 
 for (var i = 0, len = array.length; i < len; ++i) {
     init += array[i];
 }
 
 return init;
    },
    
    /*
        Calculates the production of all elements of the array
@param array - an array we should compute production for
@param init - the initial value. Default is 1.
@returns {Mixed} - the production of all elements of the input array
    */

    
    product: function(array, init) {
        array = jQuery.richArray.getArray(array);
 init = init || 1;
 
 for (var i = 0, len = array.length; i < len; ++i) {
     init *= array[i];
 }
 
 return init;
    },
    
    /*
        Reduces the array. One-elemen arrays are turned into their unique element, others are retured untouched
Examples: 
jQuery.richArray.reduce([3]) -> 3
jQuery.richArray.reduce([3, 5]) -> [3, 5]
    */

    
    reduce: function(array) {
        array = jQuery.richArray.getArray(array);
 if (1 == array.length) {
     return array[0];
 } 
 
 return array;   
    },
    
    /*
        Creates new version of array without null/undefined values
@param {Array} array - input array
@returns {Array} - an array without null/undefined values
    */

    
    compact: function(array) {
       
        var result = [];
 for (var i = 0, len = array.length; i < len; ++i) {
     if (null != array[i]) {
         result.push(array[i]);
     }
 }
 
 return result;
    },
    
    /*
       Creates a new version of the array that doesn't contain the specified value
       @patam {Array} array - input array
       @param {Mixed} value - the value that shouldn't be included to the returned array
       @returns {Array} - a new version of the input array without specified value
    */

    
    without: function(array, value) {
        var result = [];
        for (var i = 0, len = array.length; i < len; ++i) {
     if (value != array[i]) {
         result.push(array[i]);
     }    
 }
 
 return result;
    },
    
    /*
        If the passed argument is an array, returns it untouched, otherwise returns an empty array.
For internal use.
    */

    
    getArray: function(array) {
       if (!(array instanceof Array)) {
           array = [];
       }
       
       return array;
    },
    
    /*
        if the passed argument is a function, returns it untouched, otherwise returns an empty function
   */

    
    getFunction: function(fn) {
        if (!(fn instanceof Function)) fn = new Function();
 return fn;
    }    
    
    
}; 





¤ Dauer der Verarbeitung: 0.33 Sekunden  (vorverarbeitet)  ¤





zum Wurzelverzeichnis wechseln
Diese Quellcodebibliothek enthält Beispiele in vielen Programmiersprachen. Man kann per Verzeichnistruktur darin navigieren. Der Code wird farblich markiert angezeigt.
zum Wurzelverzeichnis wechseln
sprechenden Kalenders

in der Quellcodebibliothek suchen




Laden

Fehler beim Verzeichnis:


in der Quellcodebibliothek suchen

Die farbliche Syntaxdarstellung ist noch experimentell.


Bot Zugriff