?? toplev.html
字號:
<TR> <TD VALIGN=TOP><P><A NAME="1122519"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext><I>Implemented in</I></ztabletext></FONT> </TD> <TD VALIGN=TOP><P><A NAME="1122521"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext>JavaScript 1.5, NES 6.0</ztabletext></FONT> </TD> </TR> <TR> <TD VALIGN=TOP><P><A NAME="1122523"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext><I>ECMA version</I></ztabletext></FONT> </TD> <TD VALIGN=TOP><P><A NAME="1122525"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext>ECMA-262 Edition 3.</ztabletext></FONT> </TD> </TR></TABLE><P></zparagraph></FONT><P><BR><A NAME="1122526"> </A><A NAME="Syntax"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><B><zrefheader>Syntax</zrefheader></B></FONT><BR><A NAME="1122527"></A><FONT FACE="courier, couriernew, monospaced size" SIZE="2"><zcodeline>encodeURIComponent(uri)</zcodeline></FONT><P><BR><A NAME="1122528"> </A><A NAME="Parameters"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><B><zrefheader>Parameters</zrefheader></B></FONT><BR><A NAME="1122534"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph><BR><P><TABLE WIDTH="90%" BORDER="1" CELLPADDING="5" CELLSPACING="0"> <CAPTION></CAPTION><P><FONT FACE=""><B></B></FONT><BR><BR> <TR> <TD VALIGN=TOP><A NAME="1122531"></A><FONT FACE="courier, couriernew, monospaced size" SIZE="2"><zcodeline>uri</zcodeline></FONT><P> </TD> <TD VALIGN=TOP><P><A NAME="1122533"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext>A component of a Uniform Resource Identifier.</ztabletext></FONT> </TD> </TR></TABLE><P></zparagraph></FONT><P><BR><A NAME="1122535"> </A><A NAME="Description"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><B><zrefheader>Description</zrefheader></B></FONT><BR><A NAME="1122536"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph>Assumes that the URI is a URI component rather than a complete URI, so does not treat reserved characters as if they have special meaning and encodes them. See <A HREF="toplev.htm#1118346" >encodeURI</A> for the list of reserved characters.</zparagraph></FONT><P><A NAME="1122540"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph><FONT FACE="courier, couriernew, monospaced size">encodeURIComponent</FONT> replaces all characters except the following with the appropriate UTF-8 escape sequences:</zparagraph></FONT><P><A NAME="1116029"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph>.<BR><P><TABLE WIDTH="90%" BORDER="1" CELLPADDING="5" CELLSPACING="0"> <CAPTION></CAPTION><P><FONT FACE=""><B></B></FONT><BR><BR> <TR> <TD VALIGN=TOP><P><A NAME="1116018"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext>unescaped characters</ztabletext></FONT> </TD> <TD VALIGN=TOP><P><A NAME="1116020"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext>alphabetic, decimal digits, - _ . ! ~ * ' ( )</ztabletext></FONT> </TD> </TR> <TR> <TD VALIGN=TOP><P><A NAME="1116026"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext>score</ztabletext></FONT> </TD> <TD VALIGN=TOP><P><A NAME="1116028"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext>#</ztabletext></FONT> </TD> </TR></TABLE><P></zparagraph></FONT><P><BR><A NAME="1122753"> </A><A NAME="See also"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><B><zrefheader>See also</zrefheader></B></FONT><BR><A NAME="1122763"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph><A HREF="toplev.htm#1120957" >decodeURI</A>, <A HREF="toplev.htm#1063795" >eval</A>, <A HREF="toplev.htm#1118346" >encodeURI</A></zparagraph></FONT><P><BR><BR><A NAME="1063795"> </A><A NAME="eval"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="4"><zhead1>eval</zhead1><HR SIZE="2" NOSHADE></FONT><BR><A NAME="1063805"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph>Evaluates a string of JavaScript code without reference to a particular object.<BR><P><TABLE WIDTH="90%" BORDER="1" CELLPADDING="5" CELLSPACING="0"> <CAPTION></CAPTION><P><FONT FACE=""><B></B></FONT><BR><BR> <TR> <TD VALIGN=TOP><P><A NAME="1063798"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext><I>Core function</I></ztabletext></FONT> </TD> <TD VALIGN=TOP><P><A NAME="1063800"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext></ztabletext></FONT> </TD> </TR> <TR> <TD VALIGN=TOP><P><A NAME="1063802"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext><I>Implemented in</I></ztabletext></FONT> </TD> <TD VALIGN=TOP><P><A NAME="1092006"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext>JavaScript 1.0 </ztabletext></FONT><P><A NAME="1063804"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext></ztabletext></FONT><P><A NAME="1092017"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext>JavaScript 1.4: eval cannot be called indirectly</ztabletext></FONT> </TD> </TR> <TR> <TD VALIGN=TOP><P><A NAME="1074307"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext><I>ECMA version</I></ztabletext></FONT> </TD> <TD VALIGN=TOP><P><A NAME="1074309"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext>ECMA-262</ztabletext></FONT> </TD> </TR></TABLE><P></zparagraph></FONT><P><BR><A NAME="1063806"> </A><A NAME="Syntax"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><B><zrefheader>Syntax</zrefheader></B></FONT><BR><A NAME="1063807"></A><FONT FACE="courier, couriernew, monospaced size" SIZE="2"><zcodeline>eval(<I>string</I>)</zcodeline></FONT><P><BR><A NAME="1063808"> </A><A NAME="Parameters"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><B><zrefheader>Parameters</zrefheader></B></FONT><BR><A NAME="1063814"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph><BR><P><TABLE WIDTH="90%" BORDER="1" CELLPADDING="5" CELLSPACING="0"> <CAPTION></CAPTION><P><FONT FACE=""><B></B></FONT><BR><BR> <TR> <TD VALIGN=TOP><A NAME="1063811"></A><FONT FACE="courier, couriernew, monospaced size" SIZE="2"><zcodeline>string</zcodeline></FONT><P> </TD> <TD VALIGN=TOP><P><A NAME="1063813"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><ztabletext>A string representing a JavaScript expression, statement, or sequence of statements. The expression can include variables and properties of existing objects.</ztabletext></FONT> </TD> </TR></TABLE><P></zparagraph></FONT><P><BR><A NAME="1063815"> </A><A NAME="Description"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><B><zrefheader>Description</zrefheader></B></FONT><BR><A NAME="1096773"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph><FONT FACE="courier, couriernew, monospaced size">eval</FONT> is a top-level function and is not associated with any object.</zparagraph></FONT><P><A NAME="1063816"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph>The argument of the <FONT FACE="courier, couriernew, monospaced size">eval</FONT> function is a string. If the string represents an expression, <FONT FACE="courier, couriernew, monospaced size">eval</FONT> evaluates the expression. If the argument represents one or more JavaScript statements, <FONT FACE="courier, couriernew, monospaced size">eval</FONT> performs the statements. Do not call <FONT FACE="courier, couriernew, monospaced size">eval</FONT> to evaluate an arithmetic expression; JavaScript evaluates arithmetic expressions automatically.</zparagraph></FONT><P><A NAME="1063817"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph>If you construct an arithmetic expression as a string, you can use <FONT FACE="courier, couriernew, monospaced size">eval</FONT> to evaluate it at a later time. For example, suppose you have a variable <FONT FACE="courier, couriernew, monospaced size">x</FONT>. You can postpone evaluation of an expression involving <FONT FACE="courier, couriernew, monospaced size">x</FONT> by assigning the string value of the expression, say <FONT FACE="courier, couriernew, monospaced size">"3 * x + 2"</FONT>, to a variable, and then calling <FONT FACE="courier, couriernew, monospaced size">eval</FONT> at a later point in your script.</zparagraph></FONT><P><A NAME="1096008"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph>If the argument of <FONT FACE="courier, couriernew, monospaced size">eval</FONT> is not a string, <FONT FACE="courier, couriernew, monospaced size">eval</FONT> returns the argument unchanged. In the following example, the <FONT FACE="courier, couriernew, monospaced size">String</FONT> constructor is specified, and <FONT FACE="courier, couriernew, monospaced size">eval</FONT> returns a <FONT FACE="courier, couriernew, monospaced size">String</FONT> object rather than evaluating the string.</zparagraph></FONT><P><A NAME="1096002"></A><FONT FACE="courier, couriernew, monospaced size" SIZE="2"><zcodeline>eval(new String("2+2")) // returns a String object containing "2+2"<br>eval("2+2") // returns 4</zcodeline></FONT><P><A NAME="1063818"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph>You cannot indirectly use the <FONT FACE="courier, couriernew, monospaced size">eval</FONT> function by invoking it via a name other than <FONT FACE="courier, couriernew, monospaced size">eval</FONT>; if you do, a runtime error might occur. For example, you should not use the following code:</zparagraph></FONT><P><A NAME="1063819"></A><FONT FACE="courier, couriernew, monospaced size" SIZE="2"><zcodeline>var x = 2<br>var y = 4<br>var myEval = eval<br>myEval("x + y")</zcodeline></FONT><P><BR><A NAME="1092358"> </A><A NAME="Backward Compatibility"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><B><zrefheader>Backward Compatibility</zrefheader></B></FONT><BR><P><A NAME="1092359"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><B><zheadrunin>JavaScript 1.3 and earlier versions. </zheadrunin></B></FONT><A NAME="1092360"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph>You can use <FONT FACE="courier, couriernew, monospaced size">eval</FONT> indirectly, although it is discouraged.</zparagraph></FONT><P><P><A NAME="1092607"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><B><zheadrunin>JavaScript 1.1. </zheadrunin></B></FONT><A NAME="1092669"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph><A HREF="object.htm#1194118" >eval</A> is also a method of all objects. This method is described for the <A HREF="object.htm#1193136" >Object</A> class.</zparagraph></FONT><P><BR><A NAME="1063827"> </A><A NAME="Examples"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><B><zrefheader>Examples</zrefheader></B></FONT><BR><A NAME="1063828"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph>The following examples display output using <FONT FACE="courier, couriernew, monospaced size">document.write</FONT>. In server-side JavaScript, you can display the same output by calling the <FONT FACE="courier, couriernew, monospaced size">write</FONT> function instead of using <FONT FACE="courier, couriernew, monospaced size">document.write</FONT>.</zparagraph></FONT><P><A NAME="1063829"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph><B>Example 1.</B> In the following code, both of the statements containing <FONT FACE="courier, couriernew, monospaced size">eval</FONT> return 42. The first evaluates the string <FONT FACE="courier, couriernew, monospaced size">"x + y + 1"</FONT>; the second evaluates the string <FONT FACE="courier, couriernew, monospaced size">"42"</FONT>.</zparagraph></FONT><P><A NAME="1095914"></A><FONT FACE="courier, couriernew, monospaced size" SIZE="2"><zcodeline>var x = 2<br>var y = 39<br>var z = "42"<br>eval("x + y + 1") // returns 42<br>eval(z) // returns 42</zcodeline></FONT><P><A NAME="1063831"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph><B>Example 2.</B> In the following example, the <FONT FACE="courier, couriernew, monospaced size">getFieldName(n)</FONT> function returns the name of the specified form element as a string. The first statement assigns the string value of the third form element to the variable <FONT FACE="courier, couriernew, monospaced size">field</FONT>. The second statement uses <FONT FACE="courier, couriernew, monospaced size">eval</FONT> to display the value of the form element.</zparagraph></FONT><P><A NAME="1063832"></A><FONT FACE="courier, couriernew, monospaced size" SIZE="2"><zcodeline>var field = getFieldName(3) <br>document.write("The field named ", field, " has value of ", <br> eval(field + ".value"))</zcodeline></FONT><P><A NAME="1063833"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph><B>Example 3.</B> The following example uses <FONT FACE="courier, couriernew, monospaced size">eval</FONT> to evaluate the string <FONT FACE="courier, couriernew, monospaced size">str</FONT>. This string consists of JavaScript statements that open an Alert dialog box and assign <FONT FACE="courier, couriernew, monospaced size">z</FONT> a value of 42 if <FONT FACE="courier, couriernew, monospaced size">x</FONT> is five, and assigns 0 to <FONT FACE="courier, couriernew, monospaced size">z</FONT> otherwise. When the second statement is executed, <FONT FACE="courier, couriernew, monospaced size">eval</FONT> will cause these statements to be performed, and it will also evaluate the set of statements and return the value that is assigned to <FONT FACE="courier, couriernew, monospaced size">z</FONT>.</zparagraph></FONT><P><A NAME="1063834"></A><FONT FACE="courier, couriernew, monospaced size" SIZE="2"><zcodeline>var str = "if (x == 5) {alert('z is 42'); z = 42;} else z = 0; "<br>document.write("<P>z is ", eval(str))</zcodeline></FONT><P><A NAME="1063835"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph><B>Example 4.</B> In the following example, the <FONT FACE="courier, couriernew, monospaced size">setValue</FONT> function uses <FONT FACE="courier, couriernew, monospaced size">eval</FONT> to assign the value of the variable <FONT FACE="courier, couriernew, monospaced size">newValue</FONT> to the text field <FONT FACE="courier, couriernew, monospaced size">textObject</FONT>:</zparagraph></FONT><P><A NAME="1063836"></A><FONT FACE="courier, couriernew, monospaced size" SIZE="2"><zcodeline>function setValue (textObject, newValue) {<br> eval ("document.forms[0]." + textObject + ".value") = newValue<br>}</zcodeline></FONT><P><BR><A NAME="1063839"> </A><A NAME="See also"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><B><zrefheader>See also</zrefheader></B></FONT><BR><A NAME="1063843"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph><A HREF="object.htm#1194118" >Object.eval</A> method</zparagraph></FONT><P><BR><BR><A NAME="1063963"> </A><A NAME="Infinity"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="4"><zhead1>Infinity</zhead1><HR SIZE="2" NOSHADE></FONT><BR><A NAME="1063973"> </A><FONT FACE="Arial, Helvetica, sans-serif" SIZE="2"><zparagraph>A numeric value representing infinity.<BR><P><TABLE WIDTH="90%" BORDER="1" CELLPADDING="5" CELLSPACING="0"> <CAPTION></CAPTION><P><FONT FACE=""><B></B></FONT><BR>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -