JS基础知识集锦二(原创)

Published: 2014-05-06 Category: javascript Tags: javascript基础知识

##javascript基础知识集锦##

###一、javascript中String数据类型的特点###

特点1.javascript中的字符串一旦定义便不可变,也就是说,字符串一旦创建,它们的值就不能改变。要改变原来字符串的首先要销毁原来的字符串,再用包含新值的字符串填充。

特点2.toStrng()方法。除了undefined和null没有这个方法外,别的数据类型包括字符串本身都有这个方法。在将数值类型转换为字符串使用该方法时要传个基数参数。 如10.toString(8),结果为12。但是不知道要转换的值是否为null或undefined的情况下就使用String()方法,String()会先调用toString(),如果被调用对象为null或undefined则返回他们的字符串表示。

###二、javascript中Object数据类型的特点###

Object的每个实例都有以下对象和方法:constructor、hasOwnProperty(propertyName)、isPrototypeOf(object)、propertyIsEnumerable(propertyName)、toLocalString()、toString()、valueOf()。

###三、操作符###

  • –(递减)与++(递增)操作符。操作符前置操作数表示先进行递增(减)然后求值,后置操作数表示先求值后进行递增(减)操作。它们也可作用域非数值类型,转换规则同Number()转换规则。

  • +(一元加)与-(一元减)操作符。用于非数值类型时也遵循Number()转换规则。对非数值类型作用一元加操作符时,即直接运用Number()规则,作用一元减操作符时即Number()之后变成负数。例子:

+"01" //1
+"1.1" //1.1
+false //0
+"str" //NaN

-"01" //-1
-"1.1" //-1.1
-"str" //NaN
-false //-0
  • **~、&、 、^(位操作符)*分别表示逻辑非、逻辑与、逻辑或和逻辑异或。这些操作符都直接与数字的二进制打交道。逻辑非表示将被操作数字的二进制取反后的值,如: ~23 = -24;逻辑与表示将两个操作数的二进制进行与操作后求值;同理的逻辑或、逻辑异或都表示将操作数的二进制进行或操作和异或操作后求值。这里说明下异或*操作表示相同为0,不同为1,即0^1为1,1^1为0,1^0为1,0^0为0。
  • «、»、»>(位移操作符)分别表示左移、无符号右移、有符号右移操作。同位操作符,移动操作符表示将数值的二进制码右移或左移指定位数。有符号移动表示保留符号位,无符号移动即符号位也跟着移动,如:
24<<4 //384
-24>>>4 //268435454
24>>3 //3
24>>4 //1

Ok!今天先告一段落,内容看起来少,但学起来还是很多的。列出来的只是几乎全是重点,对于后面两个二进制比较操作符可以只做了解,知道怎么回事就行了。

Fork me on GitHub