JScript的条件编译

微软对条件编译的解释是:
条件编译的某些典型用途包括使用 Jscript 中的新特性、在脚本中嵌入调试支持以及跟踪代码的运行。

先看一段代码简单的了解下:

var s=0//@cc_on+1
alert(s)

如果你使用的是IE可以看到,浏览器弹出的提示s的值是"1";

var s=0//@cc_on+1
在IE中等同于:

var s=0+1

条件编译为在注释中运行代码提供了途径。

一般我们在编写JavaScript代码时很少用到条件编译。不过条件编译由于其本身的特性,对我们检测系统,自动识别浏览器编程却提供了方便。
有一段很经典的代码:
var isMSIE = /*@cc_on!@*/false;

也可以这样:
var IE=0//@cc_on+1

更复杂点的:

var IEVersion=/*@cc_on function(){ switch(@_jscript_version){ case 1.0:return 3; case 3.0:return 4; case 5.0:return 5; case 5.1:return 5; case 5.5:return 5.5; case 5.6:return 6; case 5.7:return 7; }}()||@*/0;

(0)

相关推荐

  • JScript的条件编译

    微软对条件编译的解释是: 条件编译的某些典型用途包括使用 Jscript 中的新特性.在脚本中嵌入调试支持以及跟踪代码的运行. 先看一段代码简单的了解下: var s=0//@cc_on+1 alert(s) 如果你使用的是IE可以看到,浏览器弹出的提示s的值是"1"; var s=0//@cc_on+1 在IE中等同于: var s=0+1 条件编译为在注释中运行代码提供了途径. 一般我们在编写JavaScript代码时很少用到条件编译.不过条件编译由于其本身的特性,对我们检测系统,

  • IE中jscript/javascript的条件编译

    IE中jscript/javascript的条件编译 作者:JavaScript Kit 译者:子乌(Sheneyan) 翻译日期:2006-02-12 英文原文:Conditional Compilation of JScript/ JavaScript in IE 版权:翻译未经过javascript kit同意,我只对我所翻译的中文部分负责.版权归原作者所有. 条件编译概述 在IE中,有一个鲜为人知的功能叫做条件编译.自从IE4开始支持这个功能,它由于在一些Ajax相关的javascrip

  • JScript中的条件注释详解

    JScript 可以使用以下语句根据条件编译变量的值控制脚本的编译.既可以使用 JScript 提供的变量,也可以使用 @set 指令或 /define 命令行选项定义自己的变量. @cc_on   激活条件编译支持.   @if   根据表达式的值,有条件地执行一组语句.   @set   创建使用条件编译语句的变量.   @cc_on.@if 或 @set 语句激活条件编译.条件编译的一些典型用途包括在 JScript 中使用新功能.将调试支持嵌入到一个脚本中以及跟踪代码执行. 当编写由 W

  • 使用 JScript 创建 .exe 或 .dll 文件的方法

    什么是 JScript? JScript 是由微软开发的活动脚本语言,基于 ECMAScript 规范实现.Internet Explorer 中的 JavaScript,实际上是指 JScript.JScript 已被 Windows Script Host(WSH)支持(WSH 中的 JavaScript shell scripting:C:\> cscript jslint.js).JScript 最新的版本(JScript.NET)基于 ECMAScript 4.0 ,并且可以在 .Ne

  • asp中在JScript中使用RecordSet对象的GetRows

    写ASP程序时,一般情况总是使用的VBScript,不过也不只是这一种选择,也可以用JScript.但在用JScript作为ASP的语言时,比用VBScript有一些小小的不方便,比如RecordSet的GetRows方法. 在ASP中操作数据库,一般都要用到RecordSet对象,如果注重程序效率的话,可能就会用到RecordSet对象的GetRows方法,把记录集对象转换成数组,而操作数组在速度上将比用RecordSet对象的MoveNext方法快很多,而且可以在取出数组后尽早释放Recor

  • JScript.Encode 脚本在线解密 代码

    在线测试 JScript.Encode 在线解密 @" if (char.charCodeAt(0) > 126) return char if (escapes.indexOf(char) != -1) return escaped.substr(escapes.indexOf(char), 1) return "?" } function decodeBase64(string) { var val = 0 val += (digits[string.substr(

  • .net调用JScript脚本及JS url加密解密

    .net 使用escape 和 unescape方法: 在 C# 里,使用 escape 和 unescape,添加引用: Microsoft.JScript string strEscaped = Microsoft.JScript.GlobalObject.escape("测试打"); 注意:js的一些函数,在 jscript.net 里,全部放在 GlobalObject 下 同样, 就可以使用 unescape, encodeURI, decodeURI 等等的函数了. 或者S

  • jscript与vbscript 操作XML元素属性的代码

    Although attributes belong to a particular element, they are not considered child nodes of element nodes. Instead, they behave more like properties of IXMLDOMElement. Most of the methods for working with attributes come from IXMLDOMElement. Attribute

  • 在JScript中使用缓存技术的实际代码

    在使用VBScript时,我们可以用Application缓存数组来实现缓存,例: 程序代码: 复制代码 代码如下: Dim rs,arr  rs.Open conn,sql,1,1  arr=rs.GetRows()  Application.Lock()  Application("cache")=arr  Applicatoin.UnLock() 在VBScript里,数组是可以存到Application对象里的,但是如果ASP的语言选择为JScript的话,那么就有些不妙了,我

  • JScript实现表格的简单操作

    本文实例为大家分享了JScript实现表格的简单操作,供大家参考,具体内容如下 实现思路: 1.添加时:获取当前列表的行数,在当前一行添加下一行: 2.用insertCell()方法添加一行,下标从0开始, 3.若要给新一行添加类型.响应事件,就用setAttribute()方法,类似于键值对,并用appendChild()方法将数据保存到新一行 4.删除时:获取需要删除行的当前行数this,然后获取父节点,把整一行删掉remove(),而不是单单删除某一行的单个数据 5.修改时:获取当前修改行

随机推荐