您的位置:首页 > Web前端 > JavaScript

javascript学习之基本概念

2017-04-12 00:00 435 查看
#变量类型

Null:Null是一个对象类型,用typeof null验证时,返回object。null被看做是一个空对象引用。所以,当定义一个变量用来保存对象是,最好将该变量初始化为null而不是其他值。

Undefined:当使用var声明变量但未对其进行初始化时,变量值为undefined。对于未声明过的变量,使用alert()函数会弹出一个错误,但对一个为声明过的变量使用typeof检测其变量类型时,会返回undefined。Undefined和Null类型都是具有一个值的类型。Undefined值是派生自null值的,因此“null==undefined”。

Boolean:true不一定等于1,false不一定等于0;1==true返回false,但boolean(1)==true返回true。NaN与任何值都不相等,包括NaN本身,即NaN==NaN也返回false



Number:对于较大或较小的数值可以使用e表示法来表示,如3e10表示3乘以10的10次幂。注:浮点数的最高精度是17位小数,但其精确度元不如整数。如0.1加0.2的结果不是0.3,而是0.30000000000000004。所以在浮点数的算术计算时,可以将其适当转换为整数。

注:数值范围:在大多数浏览器中,最大数值保存在Number.MAX_VALUE中,如果某次计算超出了javascript数值范围的值,将被自动转换为Infinity值,表示负无穷或正无穷。要判断一个值是否是有穷的,使用isFinite()函数。使用isNaN()函数时,该函数会尝试将传递的参数转换成数值,任何不能转换成数值的值都会导致这个函数返回true。可以转换为数值的就返回false,如10和“10”都返回false。
parseInt()函数:
在一个变量前加个"+"号,表示对这个变量取数字,相当于对这个变量运用number()函数

String:变量值为undefined和null的变量没有toString()方法,也就是说toString()方法对这种变量无影响,不能将其转换成字符串。但String()方法可以讲任何类型的变量转换成字符串。

Object:

hasOwnProperty("name"): 查询当前对象是否有某属性。

isPrototypeOf(object): 检查传入的对象是否是另一个对象的原型。

propertyIsEnumerable(propertyName): 检查给定的属性是否能够使用for-in语句来枚举。

valueOf(): obj.valueOf()返回对象的字符串、数值或布尔值表示。测试了一下:就是返回变量的原始数值,是number就返回number...

toString(): 返回对象的字符串表示。

#运算符

逻辑与和逻辑非操作都是短路操作符。

逻辑或操作:

如果第一个操作数是对象,则返回第一个操作数。
如果第一个操作数的求值结果为false,则返回第二个操作数。
如果两个操作数都是对象,则返回第一个操作数
如果两个操作数都是null,则返回null;
如果两个操作数都是NaN,返回NaN.
如果两个操作数都是undefined,则返回undefined.

##逻辑与操作:

如果第一个操作数是对象,则返回第二个操作数。
如果第二个操作数是对象,则只有在第一个操作数的求值结果是true时,才返回对象。
如果两个操作数都是对象,则返回第二个操作数。
如果有一个操作数都是null,则返回null;
如果有一个操作数都是NaN,返回NaN.
如果有一个操作数都是undefined,则返回undefined.

加性操作符
3ff8

如果两个操作数都是字符串,则将第二个操作数与第一个操作数拼接起来;

如果只有一个操作数是字符串,则将另一个操作数转换为字符串,然后将两个字符串拼接起来。

如果有一个操作数是对象、数值或布尔值,则调用它们的toString()方法取得相应的字符串值,然后再应用关于字符串的规则。对于undefined和null,则分别调用String()函数并取得字符串"undefined"和"null".

关系操作符:

如果两个操作数都是字符串,则比较两个字符串对应的编码值。"23"<"3" 返回true,"2"的字符编码是50,"3"的字符编码是51。

任何操作数与NaN比较,结果返回均为false.

字符串与数值比较,先将字符串转换成数值,然后再比较。

null和undefined是相等的,但不是全等的。

如果两个操作数都是对象,则比较它们是不是同一个对象,如果是同一个对象则相等,返回true。否则返回false。

#语句

continue
当有双重循环使用conrinue时,继续执行,外部循环从变量连续,内部循环从头开始。

break
一般情况下,break是调出一层循环,但如果在循环前添加标签后,break不仅会退出内部循环,也会跳出外部循环。

with:with语句可以绑定一个对象。

with(location){
var qs = search.substring(1);  //相当于qs = location.search.substring(1);
}


注:大量使用with语句会导致性能下降,同时也会给调试代码造成困难。因此,在开发大学应用程序时,不建议使用with语句。

switch
switch语句在比较值时使用的是全等操作符,不会发生类型转换,如:10不等于"10"

#函数

javascript中包含应arguments对象,可以访问传递给函数的所有参数。js传递的参数是可以任意的,编译不会出错。arguments对象在全局中是不存在的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  JavaScript Options