JavaScript的数组和字符串应用
函数search实现在一个已排序的数字类型数组中查找指定数字的功能。
可以采用数组的内置方法,二分查找法等进行操作
//方法一
var search = function(arr,dst){
var idx = arr.indexOf(dst);
return idx;
};
var arr = [1, 2, 4, 6, 7, 9, 19,20, 30, 40, 45, 47];
var idx = search(arr,45);
console.log(idx); //方法二
var search = function(arr,dst){ for (var i = arr.length - 1; i >= 0; i--) {
if (arr[i] === dst) {
return i;
}
}
};
var arr = [1, 2, 4, 6, 7, 9, 19,20, 30, 40, 45, 47];
var idx = search(arr,45);
console.log(idx); //方法三 二分法
var search = function(arr,dst,left,right){
var mid = Math.floor((left+right)/2);
var midval = arr[mid];
if (dst > midval) {
search(arr,dst,mid,right);
}
else if (dst < midval) {
search(arr,dst,left,mid);
}
else{
console.log(mid);
return mid;
}
}
var arr = [1, 2, 4, 6, 7, 9, 19,20, 30, 40, 45, 47];
var idx = search(arr,45,0,arr.length-1);
console.log(idx);
实现一个 toCamelStyle 函数,把“aaa-bbb-cc”这种形式的命名转换为“aaaBbbCc”,如: toCamelStyle('margin-left'); // marginLeft。(尝试使用多种方式)
var toCamelStyle = function(str){
var nstr = str.split("-");
var mystr = "";
for (var i = 0; i < nstr.length; i++) {
if (i === 0) {
mystr = mystr + nstr[i];
}else{
mystr = mystr + nstr[i].substring(0,1).toUpperCase()+nstr[i].substring(1);
}
}
return mystr;
}
var str = "aa-bb-cc";
var mystr = toCamelStyle(str);
console.log(mystr);
JavaScript的数组和字符串应用的更多相关文章
- javascript中数组和字符串的方法比较
× 目录 [1]可索引 [2]转换 [3]拼接[4]创建[5]位置 前面的话 字符串和数组有很多的相同之处,它们的方法众多,且相似度很高:但它们又有不同之处,字符串是不可变值,于是可以把其看作只读的数 ...
- javascript中数组与字符串之间的转换以及字符串的替换
数组转化为字符串: var a=['aa','bb','cc']; var b=a.join('-'); console.log(b)----->'aa-bb-cc' 字符串中的替换: 1.re ...
- javascript -- 将数组转换为字符串:join()
join(separator) 方法用于把数组中的所有元素放入一个字符串.元素是通过指定的分隔符进行分隔的. separator:可选,指定要使用的分隔符.如果省略该参数,则默认使用逗号作为分隔符 v ...
- JavaScript使用数组拼接字符串性能如何?
传统上,字符串连接一直是js中性能最低的操作之一. view source print? 1 var text="Hello"; 2 text+=" World!&q ...
- 前端笔记之JavaScript(五)关于数组和字符串那点事
一.数组 1.1数组概念 数组(array)是一个有序的数据集合.说白了,数组就是一组数.数组内部可以存放一个或多个单独的数据,整体组成数组. 定义数组最简单的方式:数组字面量. 数组的字面量“[]” ...
- 舌尖上的javascript数组和字符串基本操作
Javascript数组基本操作 Javascript中的数组是一种特殊的对象,用来表示偏移量的索引是该对象的属性,索引可能是整数,然而这些数字索引在内部被转换为字符串类型,这是因为javascrip ...
- JavaScript中的数组和字符串
知识内容: 1.JavaScript中的数组 2.JavaScript中的字符串 一.JavaScript中的数组 1.JavaScript中的数组是什么 数组指的是数据的有序列表,每种语言基本上都有 ...
- javascript 中数组的创建 添加 与将数组转换成字符串 页面三种提交请求的方式
创建js数组 var array=new Array(); Java中创建数组 private String[] array=new String[3]; 两个完全不同的,js中是可变长度的 添加内容 ...
- JavaScript 数组、字符串、Map、Set 方法整理
在线阅读 https://www.kancloud.cn/chenmk/web-knowledges/1080519 数组 isArray():Array.isArray(value) 用于检测变量是 ...
随机推荐
- virtualbox+vagrant学习-4-Vagrantfile-9-Vagrant Settings
Vagrant Settings 配置命名空间:config.vagrant config.vagrant配置将修改vagrant本身的行为 Available Settings可用设置 config ...
- ethereumjs/ethereumjs-block-3-tests
之前可以先了解一下另一个模块,看本博客的ethereumjs/ethereumjs-common部分内容 通过tests测试文件能够帮助更好了解API的使用 ethereumjs-block/test ...
- (转)解决nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed错误
重新启动服务器,访问web服务发现无法浏览啦!登陆服务器之后进到nginx使用./nginx -s reload重新读取配置文件,发现报nginx: [error] open() "/usr ...
- 小程序发微信红包后端Nodejs实现
前提条件 1.有一个微信开放平台 https://open.weixin.qq.com/ 2.有一个微信公众平台 https://mp.weixin.qq.com 并且开通微信支付 3.有一个微信小 ...
- docker 导出导入
容器导出 docker export -o myname.tar 容器id 容器导人 docker import myname.tar httpd:v1
- laravel5.5源码阅读草稿——application
构建方法传入整个项目根目录路径(public文件夹上一级)将其设为基础路径(存在本类basePath属性中). __construct > setBasePath > bindPathsI ...
- Call to a member function allowField() on null 错误总结
Call to a member function allowField() on null 在空对象上调用 allowField() 没有该模型对象无法调用,需要创建相应的模型 错误版本: if ...
- day 33 线程
1.线程理论 什么是线程:线程是cpu的最小执行单位(实体),进程是操作系统的数据资源分配单位 2.线程的两种创建方式(重点) 查看线程的pid:使用os模块查看id,线程的id应该是相同的 3. ...
- python 时间time模块介绍和应用
1.其中format_string 类型的时间和struct_time之间可以转换,timestamp时间戳可以和struct_time之间进行转化,但是时间戳和格式化时间是不能直接转换的. time ...
- em,rem区别比较
rem是基于html元素的字体大小来决定,而em则根据使用它的元素的大小决定. 注意:很多人错误以为em是根据父类元素,实际上是使用它的元素继承了父类元素的属性才会产生的错觉. 主要区别 em 和 r ...