菜单

JavaScript记录光标在编辑器中位置的实现方法_javascript技巧_脚本之家

2020年3月12日 - 首页

正文实例陈诉了JavaScript记录光标在编辑器中地点的兑现格局。分享给我们供我们参谋,具体如下:

正文实例陈述了JavaScript数据构造与算法之检索算法。分享给大家供我们参照他事他说加以考查,具体如下:

无标题文档function ${return document.getElementById}//记录编辑器中的位置 var selection_start; var selection_end; function savePos{ var start=0; var end=0; if(typeof(textBox.selectionStart) == "number"){ // not ie //alert(typeof(textBox.selectionStart) ); start = textBox.selectionStart; end = textBox.selectionEnd; } else if{ var range = document.selection.createRange(); if.id == textBox.id){ var range_all = document.body.createTextRange(); range_all.moveToElementText; for (start=0; range_all.compareEndPoints("StartToStart", range) < 0; start++) range_all.moveStart; for (var i = 0; i <= start; i ++){ if (textBox.value.charAt start++; } var range_all = document.body.createTextRange(); range_all.moveToElementText; for (end = 0; range_all.compareEndPoints < 0; end ++) range_all.moveStart; for (var i = 0; i <= end; i ++){ if (textBox.value.charAt end ++; } } } selection_start = start; selection_end = end; }

javascript数据布局与算法—检索算法

更加多关于JavaScript相关内容可查看本站专项论题:《JavaScript切换特效与技巧总括》、《JavaScript查找算法手艺总计》、《JavaScript动漫特效与技巧汇总》、《JavaScript错误与调度技艺总括》、《JavaScript数据布局与算法能力计算》、《JavaScript遍历算法与技艺总括》及《JavaScript数学生运动算用法计算》

/*只需要查找元素是否存在数组,可以先将数组排序,再使用二分查找法*/function qSort{ if  { return []; } var left = [];//存储小于基准值 var right = [];//存储大于基准值 var pivot = arr[0]; for (var i = 1; i < arr.length; i++) { if  { left.push; } else { right.push; } } return qSort.concat;//递归}/*二分查找法,基本原理如下:* 将数组的第一个位置设置为下边界.将数组的最后一个元素所在的位置设置为上边界。* 若下边界等于或小于上边界,则做如下操作:*  除以2.* . 如果中点的元素小于查询的值,则将下边界设置为中点元素所在下标加1.* . 如果中点的元素大于查询的值,则将上边界设置为中点元素所在下标减1.* . 否则中点元素即为要查找 的数据,可以进行返回。*/function binSearch { var lowerBound = 0; var upperBound = arr.length - 1; while(lowerBound <= upperBound) { var mid = Math.floor((upperBound + lowerBound)/2); if { lowerBound = mid + 1; }else if { upperBound = mid - 1; }else { return mid; } } return -1;}/**计算重复次数*当binSearch()函数找到某个值时,如果在数据集中还有其他相同的值出现,那么该函数会定位在类似值的附近。*换句话说,其他相同的值可能会出现已找到值的左边或右边。*如果在数据集中能找到这个值,那么这个函数将开始通过两个循环来统计这个值出现的次数。*第一个循环向下遍历数组,统计找到的值出现的次数,当下一个值与要查找的值不匹配时则停止计数。*第二个循环向上遍历数组,统计找到的值出现的次数,当下一个值与要查找的值不匹配时则停止计数。* */function count { var count = 0; var position = binSearch; if  { ++count; for (var i = position-1; i > 0; --i) { if  { ++count; } else { break; } } for (var i = position+1; i < arr.length; ++i) { if  { ++count; } else { break; } } } return count;}var nums = [90,43,49,15,23,2,70,23,20,95,69,23,29,26];var list = qSort;console.log;var findnum = 23;console.log("需要查找的数据为: " + findnum);var retVal = binSearch;if  { console.log( "找到 " + findnum + "的位置为: "+retVal);}else { console.log;}console.log(findnum + "重复次数为"+count;

可望本文所述对我们JavaScript程序设计具备助于。

使用在线HTML/CSS/JavaScript代码运转工具:

更加多关于JavaScript相关内容感兴趣的读者可查阅本站专项论题:《JavaScript数学生运动算用法总括》、《JavaScript数据布局与算法技巧总括》、《JavaScript数组操作技艺总括》、《JavaScript排序算法总括》、《JavaScript遍历算法与技艺计算》、《JavaScript查找算法本领计算》及《JavaScript错误与调度技能计算》

企望本文所述对大家JavaScript程序设计有着扶植。

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图