zoukankan      html  css  js  c++  java
  • 11 基本包装类型

    1 引用类型与基本包装类型的主要区别是什么?

    引用类型与基本包装类型的主要区别就是对象的生存期

    使用 new 操作符创建的引用类型的实例,在执行流离开当前作用域之前都一直保存在内存中。

    而自动创建的基本包装类型的对象,则只存在于一行代码的执行瞬间,然后立即被销毁。

    var s1 = "some text";
    s1.color = "red";
    alert(s1.color);

    第二行代码试图为字符串 s1 添加一个 color 属性。

    但是,当第三行代码再次访问 s1 时,其 color 属性不见了。问题的原因就是第二行创建的 String 对象在执行第三行代码时已经被销毁了。

    第三行代码又创建自己的 String 对象,而该对象没有 color 属性。

    建议:应该在绝对必要的情况下再这样做,因为这种做法很容易让人分不清自己是在处理基本类型还是引用类型的值。

    2 将数字10以16进制的形式打印出来

    var num = 10;
    alert(num.toString(16));

    3 Number:四舍五入

    var num = 10.005;
    alert(num.toFixed(2));

    4 Nnumber:科学计数

    var num = 105;
    alert(num.toExponential(5));

    5 String:  找出str字符串中第二位字符

    有两种方法

    var str = "abcdefg";
    alert(str[1]); //ECMAScript 5才有的方法
    alert(str.charAt(1));

    6 String:字符串链接

    有两种方法,一种是+号(更常用),一种是concat方法。

    var str1 = "abcdefg";
    var str2 = "1234567";
    var str3 = "haha";
    var result1 = str1 + str2 + str3;
    alert(result1);
    var result2 = str1.concat(str2, str3);
    alert(result2);

    7 String: 字符串切割

    有三种方法:slice()、 substr()和 substring()。

    var str = "abcdefg";
    alert(str.slice(3,5)); //从str[3]到str[5]止,但不包含str[5];
    alert(str.substr(3,2)); //从str[3]开始,共切割2个;
    alert(str.substring(3,5)); //从str[3]到str[5]止,但不包含str[5];   

    8 String: 从头开始找,第一个d的位置。

    var str = "abcdefgd";
    alert(str.indexOf("d"));

    9 找出下列字符串中所有e字母出现的位置,并存在一个数组中,再打印这个数组。

    var str=  "abcdefg-abcdefg-abcdefg";
    var positions = new Array();
    var pos = str.indexOf("e");
    
    while(pos > -1) {
        positions.push(pos);
        pos = str.indexOf("e", pos + 1);
    }
    document.write(positions + "</br>");

    10 字符串转换成数组

    var colorText = "red,green,blue";
    var colors1 = colorText.split(",");
    var colors2 = colorText.split(",", 2);
    
    console.log(colors1);
    console.log(colors2);

    11 localeCompare()方法

    var str = "yes";
    console.log(str.localeCompare("brick"));
  • 相关阅读:
    [2012山东ACM省赛] Fruit Ninja II (三重积分,椭球体积)
    [2012山东ACM省赛] The Best Seat in ACM Contest (模拟)
    [2012山东ACM省赛] n a^o7 !(模拟,字符替换)
    [ACM] Hrbustoj 1376 能量项链 (区间动态规划)
    红黑树 c++ 实现
    八大排序算法
    git 常用命令
    linux 学习笔记 day1
    挑战:数据提取 — 实验楼
    挑战:历史命令 — 实验楼
  • 原文地址:https://www.cnblogs.com/lijy/p/6791433.html
Copyright © 2011-2022 走看看