zoukankan      html  css  js  c++  java
  • JavaScript的数组和字符串应用

    函数search实现在一个已排序的数字类型数组中查找指定数字的功能。

    可以采用数组的内置方法,二分查找法等进行操作

     1 //方法一
     2         var search = function(arr,dst){
     3             var idx = arr.indexOf(dst);
     4             return idx;
     5         };
     6         var arr = [1, 2, 4, 6, 7, 9, 19,20, 30, 40, 45, 47];
     7         var idx = search(arr,45);
     8         console.log(idx);
     9 
    10 
    11         //方法二
    12         var search = function(arr,dst){
    13             
    14             for (var i = arr.length - 1; i >= 0; i--) {
    15                 if (arr[i] === dst) {
    16                     return i;
    17                 }
    18             }
    19         };
    20         var arr = [1, 2, 4, 6, 7, 9, 19,20, 30, 40, 45, 47];
    21         var idx = search(arr,45);
    22         console.log(idx);
    23 
    24         //方法三 二分法
    25         var search = function(arr,dst,left,right){
    26             var mid = Math.floor((left+right)/2);
    27             var midval = arr[mid];
    28             if (dst > midval) {
    29                 search(arr,dst,mid,right);
    30             }
    31             else if (dst < midval) {
    32                 search(arr,dst,left,mid);
    33             }
    34             else{
    35                 console.log(mid);
    36                 return mid;
    37             }
    38         }
    39         var arr = [1, 2, 4, 6, 7, 9, 19,20, 30, 40, 45, 47];
    40         var idx = search(arr,45,0,arr.length-1);
    41         console.log(idx);

     实现一个 toCamelStyle 函数,把“aaa-bbb-cc”这种形式的命名转换为“aaaBbbCc”,如: toCamelStyle('margin-left'); // marginLeft。(尝试使用多种方式)

     1 var toCamelStyle = function(str){
     2             var nstr = str.split("-");
     3             var mystr = "";
     4             for (var i = 0; i < nstr.length; i++) {
     5                 if (i === 0) {
     6                     mystr = mystr + nstr[i];
     7                 }else{
     8                     mystr = mystr + nstr[i].substring(0,1).toUpperCase()+nstr[i].substring(1);
     9                 }
    10             }
    11             return mystr;
    12         }
    13         var str = "aa-bb-cc";
    14         var mystr = toCamelStyle(str);
    15         console.log(mystr);
  • 相关阅读:
    深入方法(22)- 指针参数
    深入方法(21)- 开放数组参数
    深入方法(20)- 静态数组参数
    深入方法(19)- 过程中的方法
    深入方法(18)- 在接口区声明的方法都相当于提前声明了
    深入方法(17)- 提前声明
    WNMP(Windows + Nginx + PHP + MySQL) 安装
    Yii2框架 数据库常用操作
    Python 生成器与迭代器 yield 案例分析
    Python VS PHP 基础语法
  • 原文地址:https://www.cnblogs.com/afel/p/9291066.html
Copyright © 2011-2022 走看看