返回首页
   
   
   知识点
   数组中是否包含某值
    var arr_data = [1, 2, 3,4,5,6,7,8,9];
    var result= arr_data.indexOf(1); //如果存在返回值的下标,不存在返回-1 
   var v1 = $.inArray(2, arr_data);//如果存在返回值的下标,不存在返回-1  
   var newArr= arr_data.filter(item=>item > 4) //这是ES6 如果条件不满足,filter()返回的是一个空数组
   处理对象数组
   var porducts = [
  {name:"cucumber",type:"vegetable"},
  {name:"banana",type:"fruit"},
  {name:"celery",type:"vegetable"},
  {name:"orange",type:"fruit"},
];
// ES6
 var filter2 = porducts.filter(function(porduct){//对porducts数组对象过滤如果porduct.type === "fruit"就return出去,再用一个变量接住
  return porduct.type === "fruit"
})
知识点
遍历json对象,数组,对象数组
当json为json对象时
var json = { "Type": "Coding", "Height": 100 };
    for (var key in json) {
        alert(key); 	//Type, Height
        alert(json[key]);	//Coding, 100
    }
    $.each(json, function (key) {
        alert(json[key]);	//Type, Height
        alert(key);   	//Coding, 100
    });
	当json为数组时
	var json = [ "Type", "Coding", "Height", "100" ];
    for (var key in json) {
        alert(key); 	//下标 从0开始
        alert(json[key]);	//具体值
    }
    $.each(json, function (key) {
        alert(json[key]);	//下标 从0开始
        alert(key);   	//具体值
    });
	
	当为对象数组时,先拆数组,再处理对象
	
知识点
	
数组中的排序方法
定义:arrayObject.sort(sortby) 其中sortby:	可选。规定排序顺序。必须是函数。
返回值:对数组的引用。请注意,数组在原数组上进行排序,不生成副本。
函数接收两个参数,排序方法就是冒泡排序,函数是需要定义一下的否则是按照字符串的ASC码排序的,而不是按照数字大小
e.g function(a,b){return a-b;}
1)当 a - b < 0  时, 则 a 元素排在 b 元素的前面。
2)当 a - b = 0 时, a , b 元素的位置不变。
3)当 a - b > 0 是, 则 b 元素排在 a 元素的前面。
所以return a-b 是升序 return b-a 是降序 
	
高速
	
处理json传到前台的日期(后台未格式化为字符串)
var str = '/Date(1400046388387)/'; 
var date = new Date(parseInt(str.replace(/\/Date\((-?\d )\)\//, '$1'))); 
var d = date.getFullYear() 
        +"-"+ date.getMonth()//月 
        +"-"+ date.getDate()//日 
		+" "+date.getHours() //小时 
		+":"+date.getMinutes() //分 
		+":"+date.getSeconds() //秒 
知识点
	
获取iframe中的对象
$("#"+iframeId).get(0).contentWindow.$("#listTable").treegrid("getSelections")
坑
	
js的relpace函数和C#的replace函数
区别就是高级语言的replace函数是替换所有出现的字符,而js的replace函数只替换首次遇到的字符
e.g 高级语言:String str="abcabc"
str.Replace("a","x") //输出xbcxbc
js: var str='abcabc'
str.replace('a','x') //输出xbcabc
要想替换所有只能用正则表达式 str.replace(/a/g,'x') //输出xbcxbc
知识点
	
用正则比较字符串 大小写不敏感
var string1 ="aBc";
var val="AbC";
var myReg = new RegExp(val,"i");
var match = string1.match(myReg)
if(match) {
alert('true')
}
输出:true