js變量都可以不顯示聲明,樓主問的是類型強制轉換嗎?
-----------------
不是,我问的就是强制声明,即这个变量不声明就不能用,而不是直接用。就象c++中那样,VBscript中可以用 option explicit 来强制变量必须先声明后使用,而且是一个好习惯,不知javascript中有没有这种办法,难道可以不显示声明就随便用吗?

解决方案 »

  1.   

    楼主说的应该是VBscript强制定义的, 不是强制类型转换的
    JS中没有,因为定不定义是不一样的意义,全局和局部的分别
      

  2.   

    好像没有,不声明也可以用<script language="javascript">
    str="世界多霉好";
    alert(str);
    </script>
      

  3.   

    不声明会出错的<script language="javascript">
    alert(str);
    </script>
      

  4.   

    不声明会出错的<script language="javascript">
    alert(str);
    </script>
    =========================
    你说的不对吧,下面的代码不报错的,这算是声明白,这明显是不声明就可以用呀,
    str这个变量没有声明,就可以给它赋值呀。注意:str前面没有 var
    <script language="javascript">
    str="abc"
    alert(str);
    </script>
      

  5.   

    不声明会出错的<script language="javascript">
    alert(str);
    </script>
    ------------------
    在c语言中你可以这样用吗?c中是必须强制声明的
      

  6.   

    不声明而直接赋值的作为全局变量

    <script language="javascript">
    str="abc";
    function demo1()
    {
    str2 = "aaa";    //也是全局变量
    }但是可以对变量是否声明进行检测
    var v1;
    alert(v1 == undefined);//声明但未赋值
    alert(typeof v2 == "undefined");//未声明或未赋值
      

  7.   

    function a(){
        temp1="AAA";//前面不加var
    }
    a();//这句如果不执行那么下面哪句会报undefined 如果执行了则temp1变成全局变量
    alert(window.temp1);在方法体中 不加var 声明变量 当方法第一次执行时 会将该变量初始化为全局变量
      

  8.   

    07年的帖子- -
    11年公布答案
    var a:Number=1;
    var s:String="s";
      

  9.   

    上面的在函数外需要实例化- -
    var a:Number=new Number(1);
    var a=new Number(1);
    都可以
      

  10.   

    再补最后一句
    如果所赋的值 不符合类型 则变量返回NaN