问题描述 在日常编码中会遇到将类数组对象转换为数组的问题,其中常用到的一种方式使用Array.prototype.slice()方法. 类数组对象 所谓的类数组对象,JavaScript对它们定义为:它们看起来很像数组,只是具有部分和数组相同特性: 拥有length属性 元素保存在对象中,可以通过索引访问 但是没有数组的其他方法,例如:push.slice.indexOf等. 转换过程 例如: var foo = { 0: 'Java', 1: 'Python', 2: 'JavaScript'…
选定元素slice() slice() 方法可从已有的数组中返回选定的元素. 语法 arrayObject.slice(start,end) 参数说明: 1.返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素. 2. 该方法并不会修改数组,而是返回一个子数组. 注意: 1. 可使用负值从数组的尾部选取元素. 2.如果 end 未被规定,那么 slice() 方法会选取从 start 到数组结尾的所有元素. 3. String.slice() 与…
JS基础篇--sort()方法的用法,参数以及排序原理   sort() 方法用于对数组的元素进行排序,并返回数组.默认排序顺序是根据字符串Unicode码点.语法:arrayObject.sort(sortby):参数sortby可选.规定排序顺序.必须是函数.注:如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序.要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较. 如果想按照其他标准进行排序,就需要提供比较函数…
定长数组定义: val ar = new Array[Int](10) val arr = Array("aa", "bb") 定长数组赋值: arr(0) = "cc" 变长数组定义: val ab = new ArrayBuffer[String]() val ab1 = ArrayBuffer[String]() 定长数组增加元素: ab += "aa" ab += ("bb", "cc&q…
方法描述 bind()方法创建一个新函数,当被调用时,将其this关键字设置为提供的值. 语法说明 fn.bind(thisArg,arg1,arg2,..) 参数说明 thisArg:当绑定函数被调用时,该参数会作为原函数运行时的this指向.当使用new操作符调用绑定函数时,该参数无效. arg1,arg2,-:当绑定函数被调用时,这些参数将传递给被绑定的方法. 应用场景 1.创建绑定方法 this.x = 9; var module = { x: 81, getX: function()…
一.作用域(what?) 官方解释是:"一段程序代码中所用到的名字并不总是有效/可用的,而限定这个名字的可用性的代码范围就是这个名字的作用域." 单从文字理解比较难懂,举个栗子: function outer(){ // 声明变量 var name = "ukerxi"; // 定义内部函数 function inner() { console.log(name); // 可以访问到 name 变量 } } console.log(name); // 报错,unde…
所谓代码,当你随便命名一个变量:var name = "ukerxi"; 就是一句代码:但当你的代码写出来后,对于后续维护及阅读的人,就可以看出代码是否,易读,易理解:优雅的代码总是遵守一定的规范,这篇文章就说说几种命名空间的运用,运用好了,可以有利于多人开发,模块化代码,代码解耦有一定的作用! 先来看看一个错误的示范: // 定义一些数据 var name = "ukerxi"; var version = "1.0.0"; var hobby…
ECMAscript5添加一种严格模式的运行模式("use strict"),让你的js语句在更加严格的环境下进行运行: 一.主要作用: 消除版本javascript中一些不合理及不严谨之处,减少怪异行为 提高编译效率,提高运行速度 为新版本的javasript做铺垫兼容 二.如何使用启动严格模式的标志就是,在开头第一行中添加"use strict"字符串,在低版本的浏览器,或是说js引擎中,只是把这个标志当做一句字符串而已,而支持ES5的浏览器会进行启动"…
ol3接口大全1.ol.Map类:(地图容器类) 实现: ol.Map(参数) 参数说明:1.1 target,说明地图所在的html元素. 如果没有指定,必须调用ol.Map类的setTarget()方法以便绘制地图: 1.2 layers,指定加载的图层. 如果未定义,则将呈现不包含图层的地图(图层是按提供的顺序呈现的, 如果想要矢量图层显示在瓦片图层顶部,则必须位于瓦片图层之后). 1.3 view, 设置地图的显示视图. 如果在构建时未指定,则必须通过ol.Map()类的setView(…
一.集合框架工具类:Collections 1.1.Collections类的特点 该工具类中所有的方法都是静态的 1.2.Collections类的常用方法 binarySearch(List<? extends Comparable<? super T>> list, T key):使用二叉搜索算法搜索指定对象的指定列表.注:使用binarySearch()方法前,必须先使用sort()方法 正序排序     sort(List<T> list):正序排序    r…