在JS中要判断一个值是否在数组中并没有函数直接使用,如PHP中就有in_array()这个函数。但我们可以写一个类似in_array()函数来判断是一个值否在函数中。/*** JS判断一个值是否存在数组中*/// 定义一个判断函数 var in_array = function(arr){// 判断参数是不是数组var isArr = arr && console.log(typeof arr===object ? arr.constructor===Array ? arr.length ? arr.length===1 ? arr[0]:arr.join(,):an empty array: arr.construc...
代码如下:<script type="text/javascript"> function fn(name){ if(typeof name === "string"){ var args = Array.prototype.slice.call( arguments, 1 ); for(var i=0;i<args.length;i++){ alert(args[i]);//结果: 111 222 } } } function callFn(){ fn("test",111,222); } callFn(); </script>
在 JS Array 中支持两个方法,shift() 和 pop(),分别是指从一个数据中的最前面和最后面删除一个值,并返删除值。看一个示例就明白了: 代码如下:var arr = [s,o,f,i,s,h]; arr.shift(); // 返回 sarr; // 目前是 [o,f,i,s,h]arr.pop() // 返回 harr // 目前是 [o,f,i,s]在很多 JS 框架中可以很常见的是,一个方法提供你传几个参数,而这些参数中,部分是可以忽略的,这些可以忽略的点可能是第一个,也可能是最后一个。传统的写法是...
背景:JavaScript中Array对象的标准方法中,没有indexOf()方法,可通过下面的代码扩展。 代码如下:if (!Array.prototype.indexOf) { Array.prototype.indexOf = function(elt) { var len = this.length >>> 0; var from = Number(arguments[1]) || 0; from = (from < 0) ? Math.ceil(from) : Math.floor(from); if (from < 0) from += len; for (; from < len; from++) { if (from in this && this[from] === elt) return from; }...
我们经常会用到这个一样逻辑,判断一个字符串或者数字是否在数组内,很多程序语言都有这样一样专门的函数,比如PHP的in_array()。那么JS有木有呢,很遗憾,JS木有这样的函数,于是想到伟大的JQ是否封装了这个函数,找到了API,JQ的确封装了这个函数jQuery.inArray( value, array ) 搜索数组中指定值并返回它的索引(如果没有找到则返回-1)。value要搜索的值。array一个数组,通过它来搜索。 当然,处于学习,自己也去写了这样的函...
首先数组的定义以及初始化的方法: var myArray = new Array(1,3.1415,"love"); //这里注意myArray数组中的元素不只是同一种数据类型的元素,可以有整形,有浮点型,有字符串等等都可以。这里充分展示了javascript作为一种语言对数据类型的弱化,语言更加的随意化,简便化。就行定义对象的时候用var一样。 在此介绍的有限,同时有一些我没有给出结果,希望大家自己体会,自己动手尝试一下,看看结果到底是什么,这样有助于记忆。以下...
new Array() new Array(len) new Array([item0,[item1,[item2,...]]] 使用数组对象的方法: var objArray=new Array(); objArray.concact([item1[,item2[,....]]]-------------------将参数列表连接到objArray的后面形成一个新的数组并返回,原有数组不受影响。如:var arr=["a","b","c"]; arr.concact("d","e"); 将返回包括从"a"到"e"字母元素的数组。而arr本身不受影响。 objArray.join(separator)-----------------以separator指...
或许你一直在用javascript中的array的sort. 或许你一直相信它会给你正确的结果。 至少我曾经也是这样认为的,直到有一天,我看到了如下的代码 : 代码如下:[5,10,1].sort(); 或许结果有点出人意料。结果如下: 代码如下:[1,10,5] 仔细深究之后,发现原来默认的sort方法并不是按照整形数据来排序,而是用的字符串匹配方式。 换言之就是10 中的这个 1 导致了上面代码的错误。 当然,解决方法有很多,可以给sort方法中传入回调函数...
1:split 函数将字符串按某个字符分割,将分割后的结果存入字符串数组中 代码如下:function SplitUsersInformation(users) { var usersArray = users.split(;); return usersArray;}2:substr 函数切割目标字符串 代码如下:currentStr = currentStr .substr(0, currentStr.length - 2);3:push 方法向Array中添加一条记录 代码如下:var totalUsers = new Array();function PushItem(name, departmemt) { var currentUser ...
代码如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" ><head> <title>重排序方法和操作方法</title> <script type="text/javascript"> //排序方法 function basicSort(){ var values=[0,10,2,3,12,5]; alert(values.reverse());//reverse()方法只是把数组的顺序反...
直接看代码吧,测试结果也贴在里面了 代码如下:var arrDemo = new Array(); arrDemo[0] = 10; arrDemo[1] = 50; arrDemo[2] = 51; arrDemo[3] = 100; arrDemo.sort(); //调用sort方法后,数组本身会被改变,即影响原数组 alert(arrDemo);//10,100,50,51 默认情况下sort方法是按ascii字母顺序排序的,而非我们认为是按数字大小排序 arrDemo.sort(function(a,b){return a>b?1:-1});//从小到大排序 alert(arrDemo);//10,50,51,10...
栈方法:后进先出(last in first outside) 队列方法:先进先出(first in first outside) 具体应用如下: 代码如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head> <title>栈方法</title> <script type="text/javascript"> //栈是一种LIFO(last in first outside)后进先出的数据结...
本文总结了Array数组的3个属性,length 属性、prototype 属性、constructor 属性使用,并附注数组对象的8个分类及多个方法使用,具体如下: 对象的3个属性1、length 属性 length 属性Length属性表示数组的长度,即其中元素的个数。因为数组的索引总是由0开始,所以一个数组的上下限分别是:0和length-1。和其他大多数不同的是,JavaScript数组的length属性是可变的,这一点需要特别注意。当length属性被设置得更大时,整个数组的状态...
Array 的方法1 Array.join(): 把所有元素用符号连结成string返回, 如果元素不是基本类型, 先调用toString.它对应string.split();arr = [1,2,true,3,4,5];(arr.join(-) == 1-2-true-3-4-5; 2 Array.reverse(): 逆序排列数组arr = [1,2,true,3,4,5];arr.reverse();// arr == [5,4,3,true,2,1]; 3 Array.sort(): 排序,可以传递一个排序函数作参数arr.sort(function(a,b){ return a-b;}); 4 Array.concat(): 拼接函数,在末尾拼接...
代码如下:function ClearNullArr(arr){ for(var i=0,len=arr.length;i<len;i++){ if(!arr[i]||arr[i]==||arr[i] === undefined){ arr.splice(i,1); len--; i--; } } return arr; }