File indexing completed on 2024-04-28 15:28:38

0001 <script>
0002 var pasteMode = false;
0003 
0004 function openTag(name) {
0005   if (pasteMode)
0006     return "&lt;" + name + "&gt;";
0007   else
0008     return "<" + name + ">";
0009 }
0010 
0011 function closeTag(name) {
0012   return openTag("/" + name) + (pasteMode ? "&lt;br&gt;" : "");
0013 }
0014 
0015 function isReserved(name) {
0016   
0017   worksFor = "";
0018   try {
0019     eval("var " + name + " = 42;");
0020     worksFor += "var ";
0021   }
0022   catch (e) {}
0023 
0024   try {
0025     eval("o = new Object; o." + name + " = 42;");
0026     worksFor += "fld ";
0027   }
0028   catch (e) {}
0029 
0030   try {
0031     eval("function " + name + "() {}");
0032     worksFor += "fn ";
0033   }
0034   catch (e) {}
0035 
0036   if (worksFor == "")
0037     worksFor = openTag("font color='red'") + "Nothing" + closeTag("font");
0038   else
0039     worksFor = openTag("font color='blue'") + worksFor + closeTag("font");
0040 
0041   return worksFor;
0042 }
0043 
0044 function doLog(msg) {
0045   document.getElementById("log").innerHTML += msg + "<br>";
0046 }
0047 
0048 function testKW(name) {
0049   doLog(name + " works for:" + isReserved(name));
0050 }
0051 
0052 function doIt() {
0053   testKW("sanityCheck");
0054   testKW("function");
0055   //
0056   testKW("abstract");
0057   testKW("boolean");
0058   testKW("byte");
0059   testKW("char");
0060   testKW("class");
0061   testKW("const");
0062   testKW("debugger");
0063   testKW("double");
0064   testKW("enum");
0065   testKW("export");
0066   testKW("extends");
0067   testKW("final");
0068   testKW("float");
0069   testKW("goto");
0070   testKW("implements");
0071   testKW("import");
0072   testKW("int");
0073   testKW("interface");
0074   testKW("long");
0075   testKW("native");
0076   testKW("package");
0077   testKW("private");
0078   testKW("protected");
0079   testKW("public");
0080   testKW("short");
0081   testKW("static");
0082   testKW("super");
0083   testKW("synchronized");
0084   testKW("throws");
0085   testKW("transient");
0086   testKW("volatile");
0087   document.close();
0088 }
0089 </script>
0090 <body onload="doIt()">
0091 <table>
0092   <tr>
0093     <th>Current</th>
0094     <th>Mozilla</th>
0095     <th>IE</th>
0096   <tr>
0097     <td>
0098       <div id="log">
0099     </td>
0100     <td>
0101 sanityCheck works for:<font color='blue'>var fld fn </font><br>
0102 function works for:<font color='red'>Nothing</font><br>
0103 abstract works for:<font color='blue'>var fld fn </font><br>
0104 boolean works for:<font color='blue'>var fld fn </font><br>
0105 byte works for:<font color='blue'>var fld fn </font><br>
0106 char works for:<font color='blue'>var fld fn </font><br>
0107 class works for:<font color='blue'>var fld fn </font><br>
0108 const works for:<font color='red'>Nothing</font><br>
0109 debugger works for:<font color='red'>Nothing</font><br>
0110 double works for:<font color='blue'>var fld fn </font><br>
0111 enum works for:<font color='blue'>var fld fn </font><br>
0112 export works for:<font color='red'>Nothing</font><br>
0113 extends works for:<font color='blue'>var fld fn </font><br>
0114 final works for:<font color='blue'>var fld fn </font><br>
0115 float works for:<font color='blue'>var fld fn </font><br>
0116 goto works for:<font color='blue'>var fld fn </font><br>
0117 implements works for:<font color='blue'>var fld fn </font><br>
0118 import works for:<font color='red'>Nothing</font><br>
0119 int works for:<font color='blue'>var fld fn </font><br>
0120 interface works for:<font color='blue'>var fld fn </font><br>
0121 long works for:<font color='blue'>var fld fn </font><br>
0122 native works for:<font color='blue'>var fld fn </font><br>
0123 package works for:<font color='blue'>var fld fn </font><br>
0124 private works for:<font color='blue'>var fld fn </font><br>
0125 protected works for:<font color='blue'>var fld fn </font><br>
0126 public works for:<font color='blue'>var fld fn </font><br>
0127 short works for:<font color='blue'>var fld fn </font><br>
0128 static works for:<font color='blue'>var fld fn </font><br>
0129 super works for:<font color='blue'>var fld fn </font><br>
0130 synchronized works for:<font color='blue'>var fld fn </font><br>
0131 throws works for:<font color='blue'>var fld fn </font><br>
0132 transient works for:<font color='blue'>var fld fn </font><br>
0133 volatile works for:<font color='blue'>var fld fn </font><br>
0134     </td>
0135     <td>
0136 sanityCheck works for:<font color='blue'>var fld fn </font><br>
0137 function works for:<font color='red'>Nothing</font><br>
0138 abstract works for:<font color='blue'>var fld fn </font><br>
0139 boolean works for:<font color='blue'>var fld fn </font><br>
0140 byte works for:<font color='blue'>var fld fn </font><br>
0141 char works for:<font color='blue'>var fld fn </font><br>
0142 class works for:<font color='red'>Nothing</font><br>
0143 const works for:<font color='red'>Nothing</font><br>
0144 debugger works for:<font color='red'>Nothing</font><br>
0145 double works for:<font color='blue'>var fld fn </font><br>
0146 enum works for:<font color='red'>Nothing</font><br>
0147 export works for:<font color='red'>Nothing</font><br>
0148 extends works for:<font color='red'>Nothing</font><br>
0149 final works for:<font color='blue'>var fld fn </font><br>
0150 float works for:<font color='blue'>var fld fn </font><br>
0151 goto works for:<font color='blue'>var fld fn </font><br>
0152 implements works for:<font color='blue'>var fld fn </font><br>
0153 import works for:<font color='red'>Nothing</font><br>
0154 int works for:<font color='blue'>var fld fn </font><br>
0155 interface works for:<font color='blue'>var fld fn </font><br>
0156 long works for:<font color='blue'>var fld fn </font><br>
0157 native works for:<font color='blue'>var fld fn </font><br>
0158 package works for:<font color='blue'>var fld fn </font><br>
0159 private works for:<font color='blue'>var fld fn </font><br>
0160 protected works for:<font color='blue'>var fld fn </font><br>
0161 public works for:<font color='blue'>var fld fn </font><br>
0162 short works for:<font color='blue'>var fld fn </font><br>
0163 static works for:<font color='blue'>var fld fn </font><br>
0164 super works for:<font color='red'>Nothing</font><br>
0165 synchronized works for:<font color='blue'>var fld fn </font><br>
0166 throws works for:<font color='blue'>var fld fn </font><br>
0167 transient works for:<font color='blue'>var fld fn </font><br>
0168 volatile works for:<font color='blue'>var fld fn </font><br>
0169     </td>
0170   <tr>
0171   
0172