美文网首页
JavaScript函数对象集合字符串

JavaScript函数对象集合字符串

作者: 东了个尼 | 来源:发表于2019-12-06 11:23 被阅读0次
    1.JavaScript 函数会在某代码调用它时被执行。
    function myFunction(p1, p2) {
        return p1 * p2;              // 该函数返回 p1 和 p2 的乘积
    }
    
    2.JavaScript 函数语法
    JavaScript 函数通过 function 关键词进行定义,其后是函数名和括号 ()。
    函数名可包含字母、数字、下划线和美元符号(规则与变量名相同)。
    圆括号可包括由逗号分隔的参数:
    
    由函数执行的代码被放置在花括号中:{}
    function name(参数 1, 参数 2, 参数 3) {
        要执行的代码
    }
    
    3.函数返回
    当 JavaScript 到达 return 语句,函数将停止执行。
    如果函数被某条语句调用,JavaScript 将在调用语句之后“返回”执行代码。
    函数通常会计算出返回值。这个返回值会返回给调用者:
    
    var x = myFunction(4, 3);        // 调用函数,返回值被赋值给 x
    function myFunction(a, b) {
        return a * b;                // 函数返回 a 和 b 的乘积
    }
    
    4.JavaScript 对象
    (JavaScript 对象中的)名称:值对被称为属性。
    var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};
    
    4.1对象方法:
    对象也可以有方法。
    方法是在对象上执行的动作。
    方法以函数定义被存储在属性中。
    栗子
    var person = {
      firstName: "Bill",
      lastName : "Gates",
      id       : 678,
      fullName : function() {
        return this.firstName + " " + this.lastName;
      }
    };
    
    4.2访问对象属性
    第一种
    objectName.propertyName
    第二种
    objectName["propertyName"]
    
    5.JavaScript 字符串

    JavaScript 字符串用于存储和操作文本。

    5.1JavaScript 字符串是引号中的零个或多个字符。
    var x = "Bill Gates"
    
    5.2字符串长度
    内建属性 length 可返回字符串的长度:
    var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    var sln = txt.length;
    
    5.3查找字符串中的字符串

    indexOf() 方法返回字符串中指定文本首次出现的索引(位置):

    var str = "The full name of China is the People's Republic of China.";
    var pos = str.indexOf("China");
    pos = 17
    如果未找到文本, indexOf() 和 lastIndexOf() 均返回 -1。
    
    

    lastIndexOf() 方法返回指定文本在字符串中最后一次出现的索引:

    var str = "The full name of China is the People's Republic of China.";
    var pos = str.lastIndexOf("China");
    pos = 51
    如果未找到文本, indexOf() 和 lastIndexOf() 均返回 -1。
    
    5.4提取部分字符串
    有三种提取部分字符串的方法:
    slice(start, end)
    substring(start, end)
    substr(start, length)
    
    slice() 方法
    slice() 提取字符串的某个部分并在新字符串中返回被提取的部分。
    该方法设置两个参数:起始索引(开始位置),终止索引(结束位置)。
    这个例子裁剪字符串中位置 7 到位置 13 的片段:
    var str = "Apple, Banana, Mango";
    var res = str.slice(7,13);
    res = Banana
    
    substring() 方法
    var str = "Apple, Banana, Mango";
    var res = str.substring(7,13);
    res = Banana
    

    substr() 方法
    substr() 类似于 slice()。
    不同之处在于第二个参数规定被提取部分的长度。

    var str = "Apple, Banana, Mango";
    var res = str.substr(7,6);
    res = Banana
    

    替换字符串内容
    replace() 方法用另一个值替换在字符串中指定的值:

    str = "Please visit Microsoft!";
    var n = str.replace("Microsoft", "W3School");
    replace() 方法不会改变调用它的字符串。它返回的是新字符串。
    默认地,replace() 只替换首个匹配:
    

    转换为大写和小写
    通过 toUpperCase() 把字符串转换为大写:

    var text1 = "Hello World!";       // 字符串
    var text2 = text1.toUpperCase();  // text2 是被转换为大写的 text1
    text2 = HELLO WORLD!
    同理通过 toLowerCase() 把字符串转换为小写:
    
    

    concat() 方法
    concat() 连接两个或多个字符串:

    把字符串转换为数组
    可以通过 split() 将字符串转换为数组:

    var txt = "a,b,c,d,e";   // 字符串
    txt.split(",");          // 用逗号分隔
    txt.split(" ");          // 用空格分隔
    txt.split("|");          // 用竖线分隔
    
    7.数组属性和方法
    var x = cars.length;   // length 属性返回元素的数量
    var y = cars.sort();   // sort() 方法对数组进行排序
    
    7.1遍历数组元素

    遍历数组的最安全方法是使用 "for" 循环:

    var fruits, text, fLen, i;
    
    fruits = ["Banana", "Orange", "Apple", "Mango"];
    fLen = fruits.length;
    text = "<ul>";
    for (i = 0; i < fLen; i++) {
         text += "<li>" + fruits[i] + "</li>";
    } 
    
    7.2添加数组元素

    向数组添加新元素的最佳方法是使用 push() 方法:

    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.push("Lemon");   
    
    也可以使用 length 属性向数组添加新元素:
    
    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits[fruits.length] = "Lemon";     // 向 fruits 添加一个新元素 (Lemon)
    
    7.3删除元素

    shift() 方法会删除首个数组元素,并把所有其他元素“位移”到更低的索引。

    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.shift();            // 从 fruits 删除第一个元素 "Banana"
    

    使用 splice() 来删除元素
    通过聪明的参数设定,您能够使用 splice() 在数组中不留“空洞”的情况下移除元素:

    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.splice(0, 1);        // 删除 fruits 中的第一个元素
    
    7.4合并(连接)数组

    concat() 方法通过合并(连接)现有数组来创建一个新数组:
    实例(合并两个数组)

    concat() 方法不会更改现有数组。它总是返回一个新数组。
    
    var myGirls = ["Cecilie", "Lone"];
    var myBoys = ["Emil", "Tobias", "Linus"];
    var myChildren = myGirls.concat(myBoys);   // 连接 myGirls 和 myBoys
    myChildren =Emma,Isabella,Jacob,Michael,Ethan
    

    所有 JavaScript 对象都拥有 toString() 方法。
    数组转字符串
    自动 toString()
    如果需要原始值,则 JavaScript 会自动把数组转换为字符串。下面两个例子将产生相同的结果:

    7.5JavaScript 数组排序

    sort() 方法是最强大的数组方法之一。
    sort() 方法以字母顺序对数组进行排序:

    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.sort();            // 对 fruits 中的元素进行排序
    fruits =[ Apple,Banana,Mango,Orange]
    

    反转数组

    reverse() 方法反转数组中的元素。
    您可以使用它以降序对数组进行排序:
    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.reverse();         // 反转元素顺序
    fruits = Apple,Banana,Mango,Orange
    

    数组排序
    默认地,sort() 函数按照字符串顺序对值进行排序。
    该函数很适合字符串("Apple" 会排在 "Banana" 之前)。
    不过,如果数字按照字符串来排序,则 "25" 大于 "100",因为 "2" 大于 "1"。
    正因如此,sort() 方法在对数值排序时会产生不正确的结果。
    我们通过一个比值函数来修正此问题:

    var points = [40, 100, 1, 5, 25, 10];
    points.sort(function(a, b){return a - b}); 
    

    使用相同的技巧对数组进行降序排序:

    var points = [40, 100, 1, 5, 25, 10];
    points.sort(function(a, b){return b - a}); 
    

    查找集合中的最大值

    对数组使用 Math.max()
    您可以使用 Math.max.apply 来查找数组中的最高值:
    实例
    function myArrayMax(arr) {
        return Math.max.apply(null, arr);
    }
    

    查找数组中的最小值

    对数组使用 Math.min()
    您可以使用 Math.min.apply 来查找数组中的最低值:
    function myArrayMin(arr) {
        return Math.min.apply(null, arr);
    }
    

    排序对象数组
    JavaScript 数组经常会包含对象:

    var cars = [
    {type:"Volvo", year:2016},
    {type:"Saab", year:2001},
    {type:"BMW", year:2010}];
    
    cars.sort(function(a, b){return a.year - b.year});
    
    

    比较字符串属性会稍复杂:

    cars.sort(function(a, b){
          var x = a.type.toLowerCase();
          var y = b.type.toLowerCase();
          if (x < y) {return -1;}
          if (x > y) {return 1;}
          return 0;
    });
    

    相关文章

      网友评论

          本文标题:JavaScript函数对象集合字符串

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