美文网首页
第三章 JavaScript基本概念(二)

第三章 JavaScript基本概念(二)

作者: 伊凡的一天 | 来源:发表于2018-04-28 10:39 被阅读4次

    3. 数据类型

    3.6 String 类型

      String 类型用于表示由零个或多个16位Unicode字符组成的字符序列,即字符串。在ECMAScript中,字符串可以由双引号或单引号表示,并且这两种方式没有任何区别

      String数据类型包含一些特殊的字符字面量,也叫做转义序列,用于表示非打印字符,或者具有其他用途的字符,常见的字符字面量如下所示:

    • \n:换行
    • \t:制表符
    • \b:空格
    • \r:回车
    • \:\
    • ':’
    • ":”

    以上这些字符字面量在字符串中只作为1个字符来解析,因此下面定义的字符串长度为2:

    var text = "h\\";
    alert(text.length);  //2
    

      ECMAScript中的字符串是不可变的,也就是说,字符串一旦创建,它的值就不能改变。要改变某个变量保存的字符串,首先要销毁原来的字符串,然后再用另一个包含新值的字符串填充该变量。例如:

    var lang = "Java";
    lang = lang + "Script";
    

    实现以上操作的过程如下:首先创建一个能容纳10个字符的新字符串,然后在这个字符串中填充"Java"和"Script",最后一步是销毁原来的字符串"Java"和字符串"Script"。这个过程是在后台发生的,而这也是某些旧版本浏览器拼接字符串速度很慢的原因。

      要将一个值转换为字符串,有两种方式:

    • 调用几乎每个值都有的toString()函数
    • 使用转型函数String()

      除了null值和undefined值,其他类型的对象都拥有一个toString函数。下面是一个简单的例子:

    var age = 11;
    var ageAsString = age.toString();  //字符串"11"
    var found = true;
    var foundAsString = found.toString();  //字符串"true"
    

      字符串也拥有toString()方法,返回此字符串的一个副本。另外,在调用数值的toString()方法时,可以传递一个参数:输出数值的基数。默认情况下,toString()方法以十进制格式返回数值的字符串表示。

      在不知道要转换的值是不是null或undefined的情况下,还可以使用转型函数String()。这个函数能够将任何类型的值转换为字符串。String()函数遵循以下规则:

    • 如果由toString()方法,则调用该方法并返回结果
    • 如果值是null,则返回"null"
    • 如果值是undefined,则返回"undefined"

    3.7 Object类型

       ECMAScript中的Object类型其实就是一组数据和功能的集合。对象可以通过执行new操作符后跟要创建的对象类型的名称来创建。而创建Object类型的实例,并为其添加属性和方法,就可以创建自定义对象,如下所示:

    var o  = new Object();
    

      在ECMAScript中,Object类型是所有其他类型的基础。换句话说,Object类型所具有的任何属性和方法也都存在与其他更具体的对象中。Object的每个实例都具有下列属性和方法:

    • Constructor:保存着用于创建当前对象的函数。对于前面的例子而言,构造函数(constructor)就是Object()。
    • hasOwnProperty(propertyName):用于检查给定的属性在当前对象实例中(而不是在实例的原型中)是否存在。
    • isPrototypeOf(object):用于检查被传入的对象是否是另一个对象的原型。
    • propertyIsEnumerable(propertyName):用于检查给定的属性是否能够使用for-in语句来枚举。
    • toLocaleString():返回对象的字符串表示,该字符串与执行环境的地区对应。
    • toString():返回对象的字符串表示。
    • valueOf():返回对象的字符串,数值或布尔值表示。通常与toString()方法的返回值相同。

    相关文章

      网友评论

          本文标题:第三章 JavaScript基本概念(二)

          本文链接:https://www.haomeiwen.com/subject/sgwwlftx.html