Пользователь

Добро пожаловать,

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

Меню сайта




Ваше мнение
Легко ли найти нужную информацию на сайте?

Очень просто
Нахожу почти сразу
Приходится тщательно покопаться
Почти невозможно
Не нашел (лень разбираться)


Результаты
Другие опросы

Всего голосов: 589
Комментарии: 0


Наши партнеры



Статистика




Programming books  Download software  Documentation  Scripts  Content Managment Systems(CMS)  Templates  Icon Sets  Articles  Contacts  Voting  Site Search




Книги-online



Function Оглавление | Назад | Вперёд | Индекс

Function

Специфицирует строку JavaScript-кода, компилируемую как функция.

Объект ядра

Реализован в

JavaScript 1.1, NES 2.0

JavaScript 1.2: добавлены свойства arity, arguments.callee; добавлена возможность вложения функций.

JavaScript 1.3: добавлены методы apply, call и toSource; не рекомендуется использовать свойство arguments.caller.

Версия ECMA

ECMA-262

Создание

Конструктор Function:

new Function ([arg1[, arg2[, ... argN]],] functionBody)

Оператор function (см. "function"):

function name([param[, param[, ... param]]]) {
   statements
}

Параметры

arg1, arg2, ... argN

Имена, используемые функцией в качестве имён формальных аргументов. Каждое имя обязано быть строкой, соответствующей верному JavaScript-идентификатору; например, "x" или "theValue".

functionBody

Строка операторов JavaScript, образующих определение функции.

name

Имя функции.

param

Имя аргумента, передаваемого функции. Функция может иметь до 255 аргументов.

statements

Операторы, образующие тело функции.

Описание

Function-объекты, созданные конструктором Function, вычисляются каждый раз при их использовании. Это менее эффективно, чем объявление функции и вызов её внутри Вашего кода, поскольку объявленные функции компилируются.

Чтобы возвращать значение, функция обязана иметь оператор return, который специфицирует возвращаемое значение.

Все параметры передаются функции по значению; значение передаётся функции, но если функция изменяет значение параметра, это изменение не отражается глобально или в вызывающей функции. Однако, если Вы передаёте функции объект в качестве параметра и функция изменяет свойства объекта, эти изменения видны вне функции, как показано в следующем примере:

function myFunc(theObject) {
   theObject.make="Toyota"
}

mycar = {make:"Honda", model:"Accord", year:1998}
x=mycar.make     // возвращает Honda
myFunc(mycar)    // передаёт объект mycar функции
y=mycar.make     // возвращает Toyota (prop было изменено функцией)

Ключевое слово this не ссылается на выполняемую в данный момент функцию, поэтому Вы обязаны обращаться к Function-объектам по имени, даже в теле функции.

Доступ к аргументам функции через массив arguments. Вы можете обращаться в функции к аргументам функции, используя массив arguments. См. arguments.

Специфицирование аргументов в конструкторе Function. Следующий код создаёт Function-объект, принимающий два аргумента:

var multiply = new Function("x", "y", "return x * y")

Аргументы "x" и "y" являются формальными именами аргументов, которые используются в теле функции, "return x * y".

Предыдущий код присваивает функцию переменной multiply. Для вызова Function-объекта Вы можете специфицировать имя переменной, как если бы она была функцией, как показано далее в примерах:

var theAnswer = multiply(7,6)
var myAge = 50
if (myAge >=39) {myAge=multiply (myAge,.5)}

Присвоение функции переменной конструктором Function. Предположим, Вы создаёте переменную multiply с использованием конструктора Function, как показано в предыдущем разделе:

var multiply = new Function("x", "y", "return x * y")

Это похоже на следующее объявление функции:

function multiply(x,y) {
   return x*y
}

Присвоение функции переменной с использованием конструктора Function похоже на объявление функции оператором function, но имеются и отличия:

  • Когда Вы присваиваете функцию переменной с использованием var multiply = new Function("..."), multiply является переменной, для которой текущее значение является ссылкой на функцию, созданную как new Function().
  • Когда Вы создаёте функцию с использованием function multiply() {...}, multiply является не переменной, а именем функции.

Вложение функций. Вы можете вкладывать функции друг в друга. Вложенная функция (внутренняя) является private для содержащей её (внешней) функции:

  • Доступ к внутренней функции может быть получен только через операторы внешней функции.
  • Внутренняя функция может использовать аргументы и переменные внешней функции. Внешняя функция не может использовать аргументы и переменные внутренней функции.

Следующий пример демонстрирует вложение функций:

function addSquares (a,b) {
   function square(x) {
      return x*x
   }
   return square(a) + square(b)
}
a=addSquares(2,3) // возвращает 13
b=addSquares(3,4) // возвращает 25
c=addSquares(4,5) // возвращает 41

Если функция содержит вложенную функцию, Вы можете вызывать внешнюю функцию и специфицировать аргументы для внешней и внутренней функции:

function outside(x) {
   function inside(y) {
      return x+y
   }
   return inside
}
result=outside(3)(5) // возвращает 8

Специфицирование обработчика события объектом Function. Следующий код присваивает функцию обработчику onFocus (имя обработчика обязано записываться в нижнем регистре):

window.onfocus = new Function("document.bgColor='antiquewhite'")

Если функция присваивается переменной, Вы можете присвоить переменную обработчику события. Следующий код присваивает функцию переменной setBGColor.

var setBGColor = new Function("document.bgColor='antiquewhite'")

Вы можете использовать эту переменную для присвоения функции обработчику события одним из следующих способов:

document.form1.colorButton.onclick=setBGColor
<INPUT NAME="colorButton" TYPE="button"
   VALUE="Change background color"
   onClick="setBGColor()">

После того как Вы получили ссылку на Function-объект, Вы можете использовать его как функцию, и он будет конвертирован из объекта в функцию:

window.onfocus()

Обработчики событий не принимают аргументов, поэтому Вы не можете объявлять никакие аргументы в конструкторе Function для обработчика события. Например, Вы не можете вызывать функцию multiply через такую установку свойства onclick кнопки:

document.form1.button1.onclick=multFun(5,10)

Обратная Совместимость

JavaScript 1.1 и более ранние версии. Вы не можете вкладывать один оператор функции в другой оператор либо в самого себя.

Свойства. Резюме.

Свойство Описание
arguments

Массив, соответствующий аргументам, передаваемым функции.

arguments.callee

Специфицирует тело функции исполняемой в данный момент функции.

arguments.caller

Специфицирует имя функции, которая вызывала исполняемую в данный момент функцию.

arguments.length

Специфицирует количество аргументов, передаваемых функции.

arity

Специфицирует количество аргументов, ожидаемое функцией.

constructor

Специфицирует функцию, создающую прототип объекта.

length

Специфицирует количество аргументов, ожидаемое функцией.

prototype

Позволяет добавлять свойства в Function-объект.

Методы. Резюме.

Метод Описание
apply

Даёт возможность применять метод другого объекта в контексте вызывающего объекта.

call

Позволяет вызывать (выполнять) метод другого объекта в контексте вызывающего объекта.

toSource

Возвращает строку, представляющую исходный код функции. Переопределяет метод Object.toSource.

toString

Возвращает строку, представляющую исходный код функции. Переопределяет метод Object.toString.

valueOf

Возвращает строку, представляющую исходный код функции. Переопределяет метод Object.valueOf.

Примеры

Пример 1. Эта функция возвращает строку, содержащую отформатированное представление чисел с заполнением ведущими нулями.

// Эта функция возвращает строку, заполненную ведущими нулями
function padZeros(num, totalLen) {
   var numStr = num.toString()             //инициализируется return-значение как строка
   var numZeros = totalLen - numStr.length // вычисляется количество нулей
   if (numZeros > 0) {
      for (var i = 1; i <= numZeros; i++) {
         numStr = "0" + numStr
      }
   }
   return numStr
}

Следующие операторы вызывают функцию padZeros:

result=padZeros(42,4) // возвращает "0042"
result=padZeros(42,2) // возвращает "42"
result=padZeros(5,4)  // возвращает "0005"

Пример 2. Вы можете определить, существует ли функция, сравнив имя функции с null. В следующем примере func1 вызывается, если функция noFunc не существует; иначе вызывается функция func2. Заметьте, что требуется имя окна при обращении к функции noFunc.

if (window.noFunc == null)
   func1()
else func2()

Пример 3. Здесь создаётся обработчики события onFocus и onBlur для фрэйма. Этот код находится в том же файле, который содержит тэг FRAMESET. Заметьте, штаа это единственный способ создания обработчиков onFocus и onBlur для фрэйма, поскольку Вы не можете специфицировать обработчики в тэге FRAME.

frames[0].onfocus = new Function("document.bgColor='antiquewhite'")
frames[0].onblur = new Function("document.bgColor='lightgrey'")

apply

Даёт возможность применить метод другого объекта в контексте вызывающего объекта.

Метод из

Function

Реализован в

JavaScript 1.3

Синтаксис

apply(thisArg[, argArray])

Параметры

thisArg

Параметр для вызывающего объекта.

argArray

Массив аргументов для объекта.

Описание

Можно присваивать различные this-объекты при вызове существующей функции. this относится к текущему объекту, вызывающему объекту. С помощью apply Вы можете записать метод только один раз и затем наследовать его в другом объекте без необходимости повторно записывать этот метод для нового объекта.

apply очень похож на call, за исключением поддерживаемых типов аргументов. Вы можете использовать массив arguments вместо именованного набора параметров. С помощью apply Вы можете использовать литерал массива, например, apply(this, [name, value]), или объект Array, например, apply(this, new Array(name, value)).

Вы можете также использовать arguments для параметра argArray.
arguments является локальной переменной функции. Он может использоваться для всех неспецифицированных аргументов вызываемого объекта. Таким образом, Вы не обязаны знать аргументы вызываемого объекта, когда используете метод apply. Вы можете использовать arguments для передачи всех аргументов вызываемому объекту. Вызванный объект тогда отвечает за обработку этих аргументов.

Пример

Можно использовать apply для создания цепочки конструкторов объекта, как в Java. В следующем примере конструктор объекта product определяется с двумя параметрами, name и value. Другой объект, prod_dept, инициализирует свою уникальную переменную (dept) и вызывает конструктор для product в своём конструкторе для инициализации других переменных. Здесь параметр arguments использован для всех аргументов конструктора объекта product.

function product(name, value){
   this.name = name;
   if(value > 1000)
      this.value = 999;
   else
      this.value = value;
}
function prod_dept(name, value, dept){
   this.dept = dept;
   product.apply(product, arguments);
}
prod_dept.prototype = new product();
// поскольку 5 меньше 100, значение устанавливается
cheese = new prod_dept("feta", 5, "food");
// поскольку 5000 больше 1000, значение будет 999
car = new prod_dept("honda", 5000, "auto");

См. также

Function.call

arguments

Массив, соответствующий аргументам, передаваемым функции.

Локальная переменная

Всех объектов функции.

Свойство из

Function (не рекомендуется)

Реализовано в

JavaScript 1.1, NES 2.0

JavaScript 1.2: добавлено свойство arguments.callee.

JavaScript 1.3: не рекомендуется использовать свойство arguments.caller; удалена поддержка имён аргументов и локальных переменных как свойств массива arguments.

Версия ECMA

ECMA-262

Описание

Вы можете обращаться к аргументам функции, используя массив arguments. Этот массив содержит вхождение для каждого аргумента, передаваемого функции. Например, если функции передаются три аргумента, Вы можете обратиться к аргументам так:

arguments[0]
arguments[1]
arguments[2]

Массиву arguments может предшествовать также имя функции:

myFunc.arguments[0]
myFunc.arguments[1]
myFunc.arguments[2]

Массив arguments доступен только внутри тела функции. Попытка получить доступ к массиву arguments вне объявления функции приведёт к ошибке.

Вы можете использовать массив arguments при вызове функции с бо́льшим количеством аргументов, чем она принимает по формальному объявлению. Эта техника используется для тех функций, которым можно передавать переменное количество аргументов. Вы можете использовать arguments.length для определения количества аргументов, передаваемых функции, и последующей обработки каждого аргумента с использованием массива arguments. (Для определения количества аргументов, объявленных при определении функции, используйте свойство Function.length.)

Массив arguments имеет следующие свойства:

СвойствоОписание

arguments.callee

Специфицирует тело функции, исполняемой в данный момент.

arguments.caller

Специфицирует имя функции, вызвавшей исполняемую в данный момент функцию. (Не рекомендуется.)

arguments.length

Специфицирует количество аргументов, передаваемых функции.

Обратная Совместимость

JavaScript 1.1 и 1.2. Следующие возможности JavaScript 1.1 и JavaScript 1.2 удалены:

  • Каждая локальная переменная функции является свойством массива arguments. Например, если функция myFunc имеет локальную переменную myLocalVar, Вы можете обратиться к переменной arguments.myLocalVar.
  • Каждый формальный аргумент функции является свойством массива arguments. Например, если функция myFunc имеет два аргумента arg1 и arg2, Вы можете обратиться к аргумента arguments.arg1 и arguments.arg2. (Вы можете также обратиться к ним arguments[0] и arguments[1].)

Примеры

Пример 1. Здесь определена функция, выполняющая конкатенацию/объединение нескольких строк. Единственным формальным аргументом функции является строка, специфицирующая символ-разделитель объединяемых строк. Функция определена так:

function myConcat(separator) {
   result="" // инициализация списка
   // итерация по arguments
   for (var i=1; i<arguments.length; i++) {
      result += arguments[i] + separator
   }
   return result
}

Вы можете передать этой функции любое количеств аргументов, и она создаст список из всех аргументов как элементов списка.

// возвращает "red, orange, blue, "
myConcat(", ","red","orange","blue")
// возвращает "elephant; giraffe; lion; cheetah;"
myConcat("; ","elephant","giraffe","lion", "cheetah")
// возвращает "sage. basil. oregano. pepper. parsley. "
myConcat(". ","sage","basil","oregano", "pepper", "parsley")

Пример 2. Определяется функция, создающая HTML-списки. Единственным формальным аргументом этой функции является строка, которая содержит "U", если это неупорядоченный список (bulleted), или "O", если это упорядоченный список (numbered). Функция определена так:

function list(type) {
   document.write("<" + type + "L>") // начало списка
   // итерация по arguments
   for (var i=1; i<arguments.length; i++) {
      document.write("<LI>" + arguments[i])
   }
   document.write("</" + type + "L>") // конец списка
}

Вы можете передать этой функции любое количество аргументов, и она отобразит каждый аргумент как элемент списка указанного типа. Например, следующий вызов функции

list("U", "One", "Two", "Three")

даст на выходе

<UL>
<LI>One
<LI>Two
<LI>Three
</UL>

arguments.callee

Специфицирует тело исполняемой в данный момент функции.

Свойство из

Локальной переменной arguments; Function (не рекомендуется)

Реализовано в

JavaScript 1.2

Версия ECMA

ECMA-262

Описание

Свойство callee доступно только в теле функции.

Ключевое слово this не относится к исполняемой в данный момент функции. Используйте свойство callee для обращения к функции в теле этой функции.

Примеры

Следующая функция возвращает значение свойства callee этой функции.

function myFunc() {
   return arguments.callee
}

Возвращается следующее значение:

function myFunc() { return arguments.callee; }

См. также

Function.arguments

arguments.caller

Специфицирует имя функции, которая вызвала исполняемую в данный момент функцию.

Свойство из

Function

Реализовано в

JavaScript 1.1, NES 2.0

В JavaScript 1.3 не рекомендуется применять.

Описание

caller больше не используется.

Свойство caller доступно только в теле функции.

Если исполняемая в данный момент функция была вызвана с верхнего уровня программы JavaScript, значение caller будет null.

Ключевое слово this не относится к исполняемой в данный момент функции, поэтому Вы обязаны к функциям и объектам Function по имени, даже в теле функции.

Свойство caller является ссылкой на вызывающую функцию, поэтому,

  • Если Вы используете её в строковом контексте, Вы получите результат вызова functionName.toString. То есть декомпилированную каноническую исходную форму функции.
  • Вы также можете вызвать вызывающую функцию, если знаете аргументы, которые ей могут быть нужны. Таким образом, вызываемая функция может вызвать вызывающую функцию, не зная её имени, предполагая, что все её вызыватели имеют одну форму и размер и что они не будут необусловленно вызывать вызываемую функцию ещё раз (что может привести к бесконечной рекурсии).

Примеры

Следующий код проверяет значение свойства caller функции:

function myFunc() {
   if (arguments.caller == null) {
      return ("The function was called from the top!")
   } else return ("This function's caller was " + arguments.caller)
}

См. также

Function.arguments

arguments.length

Специфицирует количество аргументов, передаваемых функции.

Свойство из

Локальной переменной arguments; Function (не рекомендуется)

Реализовано в

JavaScript 1.1

Версия ECMA

ECMA-262

Описание

arguments.length выдаёт количество аргументов, реально переданных функции. В отличие от него, свойство Function.length указывает, сколько аргументов функция ожидает.

Пример

Использование Function.length и arguments.length.

function addNumbers(x,y){
   if (arguments.length == addNumbers.length) {
      return (x+y)
   }
   else return 0
}

Если Вы передаёте этой функции больше двух аргументов, она возвращает 0:

result=addNumbers(3,4,5)   // возвращает 0
result=addNumbers(3,4)     // возвращает 7
result=addNumbers(103,104) // возвращает 207

См. также

Function.arguments

arity

Специфицирует количество аргументов, ожидаемых функцией.

Свойство из

Function

Реализовано в

JavaScript 1.2, NES 3.0

Описание

arity является внешним относительно функции и указывает, какое количество аргументов функция ожидает. В отличие от него, arguments.length предоставляет количество аргументов, реально переданных функции.

Пример

Использование arity и arguments.length.

function addNumbers(x,y){
   if (arguments.length == addNumbers.length) {
      return (x+y)
   }
   else return 0
}

Если Вы передаёте этой функции более двух аргументов, она возвращает 0:

result=addNumbers(3,4,5)   // возвращает 0
result=addNumbers(3,4)     // возвращает 7
result=addNumbers(103,104) // возвращает 207

См. также

arguments.length, Function.length

call

Позволяет вызывать (выполнять) метод другого объекта в контексте данного (вызывающего) объекта.

Метод из

Function

Реализован в

JavaScript 1.3

Синтаксис

call(thisArg[, arg1[, arg2[, ...]]])

Параметры

thisArg

Параметр для вызывающего объекта.

arg1, arg2, ...

Аргументы для объекта.

Описание

Вы можете присвоить разные объекты this при вызове существующей функции. this ссылается на текущий (вызывающий) объект.

С помощью call Вы можете записать метод однократно и затем наследовать его в другом объекте без необходимости записывать его ещё раз для нового объекта.

Примеры

Вы можете использовать call для создания цепочки конструкторов объектов, как в Java. В следующем примере конструктор объекта product определён с двумя параметрами, name и value. Другой объект, prod_dept, инициализирует свою уникальную переменную (dept) и вызывает конструктор объекта product в своём конструкторе для инициализации других переменных.

function product(name, value){
   this.name = name;
   if(value > 1000)
      this.value = 999;
   else
      this.value = value;
}
function prod_dept(name, value, dept){
   this.dept = dept;
   product.call(this, name, value);
}
prod_dept.prototype = new product();
// поскольку 5 меньше 100, значение устанавливается

cheese = new prod_dept("feta", 5, "food");
// поскольку 5000 больше 1000, значение будет 999
car = new prod_dept("honda", 5000, "auto");

См. также

Function.apply

constructor

Специфицирует функцию, которая создаёт прототип объекта. Заметьте, что значением этого свойства является ссылка на функцию, а не строка с именем функции.

Свойство из

Function

Реализовано в

JavaScript 1.1, NES 2.0

Версия ECMA

ECMA-262

Описание

См. Object.constructor.

length

Специфицирует количество аргументов, ожидаемое функцией.

Свойство из

Function

Реализовано в

JavaScript 1.1

Версия ECMA

ECMA-262

Описание

length является внешним относительно функции и указывает, сколько аргументов функция ожидает. В противоположность ему, arguments.length является локальным относительно функции и представляет количество аргументов, реально переданных функции.

Пример

См. пример для arguments.length.

См. также

arguments.length

prototype

Значение, из которого создаются экземпляры определённого класса. Каждый объект, который может быть создан вызовом конструктора функции, имеет ассоциированное свойство prototype.

Свойство из

Function

Реализовано в

JavaScript 1.1, NES 2.0

Версия ECMA

ECMA-262

Описание

Вы можете добавлять в существующий класс новые свойства или методы, добавляя их в прототип, ассоциированный с конструктором данного класса. Синтаксис добавления нового свойства или метода таков:

fun.prototype.name = value

где

fun

Имя конструктора объекта, который вы хотите изменить.

name

Имя создаваемого свойства или метода.

value

Значение, присвоенное первоначально новому свойству или методу.

Если Вы добавляете свойство в прототип объекта, то все объекты, созданные этой функцией-конструктором этих объектов, будут иметь это новое свойство, даже если объекты существовали до создания нового свойства. Например, предположим, имеются такие операторы:

var array1 = new Array();
var array2 = new Array(3);
Array.prototype.description=null;
array1.description="Contains some stuff"
array2.description="Contains other stuff"

После установки свойства в прототипе все объекты, созданные с помощью Array, будут иметь это свойство:

anotherArray=new Array()
anotherArray.description="Currently empty"

Пример

Здесь создаётся метод str_rep и используется оператор String.prototype.rep = str_rep для добавления метода всем объектам String. Все объекты, созданные с помощью new String(), имеют теперь и этот метод, хотя объекты уже были созданы раньше. Затем создаётся альтернативный метод и добавляется к одному из объектов String через использование оператора s1.rep = fake_rep. Метод str_rep других String-объектов не изменяется.

var s1 = new String("a")
var s2 = new String("b")
var s3 = new String("c")
// Создаётся метод repeat-string-N-times для всех объектов String
function str_rep(n) {
   var s = "", t = this.toString()
   while (--n >= 0) s += t
   return s
}
String.prototype.rep = str_rep
s1a=s1.rep(3) // возвращает "aaa"
s2a=s2.rep(5) // возвращает "bbbbb"
s3a=s3.rep(2) // возвращает "cc"
// Создаётся альтернативный метод и присваивается только одной String-переменной

function fake_rep(n) {
   return "repeat " + this + " " + n + " times."
}
s1.rep = fake_rep
s1b=s1.rep(1) // возвращает "repeat a 1 times."
s2b=s2.rep(4) // возвращает "bbbb"
s3b=s3.rep(6) // возвращает "cccccc"

Функция из этого примера работает также со String-объектами, созданными без использования конструктора String. Следующий код возвращает "zzz".

"z".rep(3)

toSource

Возвращает строку, представляющую исходный код функции.

Метод из

Function

Реализован в

JavaScript 1.3

Синтаксис

toSource()

Параметры

Отсутствуют.

Описание

Метод toSource возвращает следующие значения:

  • Для встроенного объекта Function метод toSource возвращает следующие строки, указывающие на недоступность исходного кода:
       function Function() {
          [native code]
       }
  • Для специальных функций метод toSource возвращает исходный код JavaScript, который определяет объект как строку.

Этот метод обычно вызывается JavaScript внутренне, а не явно в коде. Вы можете вызывать toSource при отладке для проверки содержимого объекта.

См. также

Function.toString, Object.valueOf

toString

Возвращает строку, представляющую исходный код функции.

Метод из

Function

Реализован в

JavaScript 1.1, NES 2.0

Версия ECMA

ECMA-262

Синтаксис

toString()

Параметры

Отсутствуют.

Описание

Объект Function переопределяет метод toString объекта Object; он не наследует Object.toString. Для объектов Function метод toString возвращает строку, представляющую объект.

JavaScript вызывает метод toString автоматически, если Function представлен как текстовое значение или если на Function имеется ссылка при конкатенации строк.

Для объектов Function встроенный метод toString декомпилирует функцию обратно в исходный код JavaScript, который определяет функцию. Эта строка содержит ключевое слово function, список аргументов, фигурные скобки и тело функции.

Например, имеется следующий код, где определяется тип объектов Dog и создаётся theDog, объект типа Dog:

function Dog(name,breed,color,sex) {
   this.name=name
   this.breed=breed
   this.color=color
   this.sex=sex
}
theDog = new Dog("Gabby","Lab","chocolate","girl")

Когда Dog используется в строковом контексте, JavaScript автоматически вызывает функцию toString, которая возвращает следующие строки:

function Dog(name, breed, color, sex) { this.name = name;
this.breed = breed; this.color = color; this.sex = sex; }

См. также

Object.toString

valueOf

Возвращает строку, представляющую исходный код функции.

Метод из

Function

Реализован в

JavaScript 1.1

Версия ECMA

ECMA-262

Синтаксис

valueOf()

Параметры

Отсутствуют.

Описание

Метод valueOf возвращает следующие значения:

  • Для встроенного объекта Function метод valueOf возвращает следующую строку, указывающую, что исходный код недоступен:
       function Function() {
          [native code]
       }
  • Для специальных функций метод toSource возвращает исходный код JavaScript, который определяет объект, в виде строки. Этот метод эквивалентен методу toString функции.

Этот метод обычно вызывается JavaScript внутренне, а не явно в коде.

См. также

Function.toString, Object.valueOf Оглавление | Назад | Вперёд | Индекс

Дата последнего обновления: 28 мая 1999 года.
Copyright (c) 1999 Netscape Communications Corporation



Внимание! Если у вас не получилось найти нужную информацию, используйте рубрикатор или воспользуйтесь поиском


.



книги по программированию исходники компоненты шаблоны сайтов C++ PHP Delphi скачать