在javascript中,以下哪些是原始值

JavaScript08

在javascript中,以下哪些是原始值,第1张

js中有5种数据类型:Undefined、Null、Boolean、Number和String。还有一种复杂的数据类型Object,Object本质是一组无序的名值对组成的。Undefined类型只有一个值,即undefined,使用var声明变量,但是未对初始化的,这个变量就是Undefined类型的,例子:varialert(i==undefined)//truevari与vari=undefined这两句是等价的。包含Undefined值的变量和未定义的变量是不一样的。Null类型也只有一个值:null.null表示一个空对象的指针。Boolean类型:只有两个字面量true和false。但是js中多有的变量都可以使用Boolean()函数转换成一个Boolean类型的值。Number类型:整数和浮点数。NaN:NotaNumber。这个数值用于本来要返回一个数值,但是却未能放回一个数值的情况,以防止报错。例如:1/0返回的就是NaN。NaN的特点:1、任何涉及NaN的操作都会返回NaN。2、NaN对任何值都不相等,包括自己NaN本身。针对NaN特性,JS内置了isNaN()函数,来确定数值是不是NaN类型。String类型:略typeof操作符:对一个变量进行推断变量的类型,可能返回以下字符串:"undefined"如果这个值,未定义或者为初始化"boolean"布尔值"string"字符串"number"数值"object"对象"function"函数用法:typeof95或者typeof(95)会返回"number".

不光javascript,C#也是如此。

有关字符串的操作,都是保持原型的。在每次操作完会自动生成一个新的变量。

比如:

var s = "hello"//这里申请内存,并保存数据hello,并把内存地址赋给s

s.toUpperCase()//生成一个新的数据HELLO,并申请内存保存之

s = s.ToUpperCase() //同上,多了一步:把新的内存地址赋给s,此时s的值就是HELLO了。

所谓的“原始值是不可更改”,就是原始值对应的内存数据没有发生变化,变化的是重新申请的内存空间的数据。