JS随笔


JavaScript中数据类型

number

string

boolean

undefined

object

null

其中基本数据类型为number,string Boolean,undefined,null

object为复杂数据类型(广义的对象)



算式运算

NaN与任何数值运算都是NaN

在实现number与number运算的情况下,和java等编译语言不同的地方是:

java在int数据进行除法时,会将小数部分自动省略,而JavaScript中的number进行除法时,会保留小数。

java中没有说过直接让两个数值进行与或运算,而在JavaScript有说让两个数值进行与或运算。对于非布尔值进行与运算,会先将其转化为布尔值,然后在运算,并返回原值;

JavaScript中与运算的规则

如果两个值都为true,返回最后一个真值,返回值类型为number;如果一真一假,返回false,返回值类型为number;如果全假的话,返回第一个假,返回值类型根据第一个假值而定。(NaN或0)

进行与运算,如果第一个值为true,直接返回第二个值,如果第一个值为false,则直接返回第一个值;进行或运算,如果第一个值为true,必然返回第一 个值,如果第一个值为false,则直接返回第二个值。

关系运算符> <

number类型数值进行> 或者 < 运算跟java中的规则一致;字符串类型数值进行对比,比较的是字符第一个字符的大小,如果第一个一样大,则进行下一个字符的对比,直到对比完或者找到大于或者小于的情况。

所以在我们比较俩个字符串的数字时,一定要记得转型对比。

console.log("123344"> +"3");//加“+”强制转型



转义字符

在JavaScript中使用转义字符输入Unicode编码 \u + 四位编码(十六进制)

再网页中直接使用 &+#+字符编码(十进制)+;

与Java不同的是,javaScript中有“== =”全等于和 “!==”全部等于,javaScript中的 ==可以进行不同数据类型的对比, 不受数据类型的影响,而全等于考虑到了数据类型的不同情况。

prompt();函数

该函数可以弹出一个提示框,该提示框中会有一个文本框,用户可以在这个文本框中输入一段内容,该函数需要一个字符串作为参数,该字符串作为提示框的提示文字

用户输入的内容将作为函数的返回值返回,我们可以定义变量来接受这个返回值



JavaScript对象的初步认识

JavaScript对象跟java中的对象稍微有些不同,在我看在,java中的对象创建稍微严谨一些,java在创建对象之前,需要创建这个对象的类,然后通过这个类来创建相对应的对象,这一个对象的属性在创建类的同时已经封装好了,只要创建处对象,该对象就已经拥有了相应的属性;但是JavaScript稍微有点不同,JavaScript中先创建对象,然后再给对象通过点运算添加属性,这样的好处是应变能力强,能做到随时添加,但是没有封装的效果,相对来说比较乱。

JavaScript中,创建的number属性的值之间是独立的,互不影响。

var a =123;varb = a;a++;console.log("a = "+ a);console.log("b = "+b);

输出结果:

"a = 124"

"b = 123"

JavaScript中,创建对象,如果将两个对象联系在一起,改变其中一个变量,则会影响到另一变量。

var obj =newObject();  obj.name = "hzt";  var obj2 = obj;  obj.name = "zph";  console.log(obj.name);  console.log(obj2.name);

结果:

"zph"

"zph"

这就是JavaScript中基本数据类型的与引用数据类型的的区别。

JavaScript中的基本数据类型直接储存在栈内存中,对象储存在堆内存中。

你可能感兴趣的:(JS随笔)