JS问题引发的变量问题(C,C#,C++,JAVA都看过来,帮帮我)
发布网友
发布时间:2022-05-07 13:27
我来回答
共6个回答
热心网友
时间:2022-04-24 03:56
javascript的变量是没有类型的。
所以可以这样写:
var a = 5;
a = "string";
可以把变量理解为一个放值的容器,像C,C++的这种容器是专用的,只能放类型一致的值。而javascript的这种容器是通用的,什么类型的都可以放。
所以在javascript里面就不会是:
Date now = new Date();了。
因为now没有类型,var只是说这是一个变量罢了。
如果你看一下typeof(Date)会发现它是一个函数,看一下typeof(Date()),会发现是一个字符串。而typeof(new Date())是一个对象。和C++这些语言不同,javascript没有专门的构造函数,Date其实和普通函数没有区别。相应的,任何函数你给它一个new都没有问题。
在javascript里面,可以这样理解:new init()表示,创建一个对象,然后用init函数来初始化这个对象。
具体一点:
function init(){
this.num = 100;
return 100;
}
现在var a = init();那么a = 100,因为init()返回了100
而var a = new init();那么a是一个对象{num:100},因为在init里面的this就是new出来的这个对象。在javascript里面,任何对象都可以随时加上一个属性。this.num = 100就是给this加了一个名字为num,值为100的属性。
热心网友
时间:2022-04-24 05:14
JS中声明变量或对象的时候,统一都是用var,声明的时候JS并不知道该变量或对象是什么数据类型,你赋值之后,JS会自己区分的,这个不用我们担心,只需要知道这就是JS的语法规则就行,和java,C#是一样的,各自语法规则不同而已
热心网友
时间:2022-04-24 06:48
JS的语法规则,声明一个变量是用VAR做关键字,PHP这些脚本语言都是这样,因为这些脚本语言是弱类型的语言,所以不像JAVA、C、C++这些强类型语言一样需要根据不同的类型来声明变量。
热心网友
时间:2022-04-24 08:40
VS2008中吗?
var 指通所有类型。 像javascript的var
热心网友
时间:2022-04-24 10:48
var 一般是指在javascript里面用到定义local(局部)变量的,而new一般用于新建对象,如同String,或者任何你自己造的对象。
热心网友
时间:2022-04-24 13:12
now=new Date(); 这样也行的