Мин Макс функции ошибок в иллюстраторе javascript / extendscript? - PullRequest
0 голосов
/ 06 апреля 2011

Может кто-нибудь объяснить, почему следующий код возвращает разные результаты в Safari / Javascript и Illustrator / ExtendScript?

В моих тестах браузерная версия этого работает, как ожидалось.Иллюстратор не так уж и много.Это настоящая ошибка?Или просто проблема с ExtendScript (реализация Adobe Javascript для приложений Creative Suite) и методом применения?

function testMinMax(){
    var testArray = [2,1,7,3,6,7,8,23,45,26,13,9];

    function getMinOfArray(numArray) {
      return Math.min.apply(Math, numArray);    
    }

    function getMaxOfArray(numArray) {
      return Math.max.apply(Math, numArray);
    }

    alert ("min [" + getMinOfArray(testArray) + "] of " + testArray);
    alert ("max [" + getMaxOfArray(testArray) + "] of " + testArray);

    // Expected Values:
    // min [1] of 2,1,7,3,6,7,8,23,45,26,13,9
    // max [45] of 2,1,7,3,6,7,8,23,45,26,13,9

    // Illustrator Scripting returns the following values
    // min [1] of 2,1,7,3,6,7,8,23,45,26,13,9
    // max [9] of 2,1,7,3,6,7,8,23,45,26,13,9   
}

// Call the test case
testMinMax();

1 Ответ

1 голос
/ 22 декабря 2011

У меня была похожая проблема. После того, как я увидел ваш пост (единственное, что смог найти), мне пришлось придумать этот обходной путь;

var varSourceArray=[varSource_R, varSource_G, varSource_B]
varSourceArray.sort()

varSource_Min = varSourceArray[0];
varSource_Max = varSourceArray[2];
...