//类数组变数组方法 Array.from [].slice.call(类数组)
var personArr = [{
name: "妄想",
src: "./sasdafasf",
des: "asfaf",
sex: "m",
age: 19
}, {
name: "asdaf",
src: "./sasdafasa",
des: "asfah",
sex: "f",
age: 20
}, {
name: "gdagag",
src: "./sasdafasb",
des: "asfag",
sex: "a",
age: 25
}, {
name: "wrgsd",
src: "./sasdafasc",
des: "asfaf",
sex: "c",
age: 19
}, {
name: "asfasg",
src: "./sasdafasd",
des: "asfae",
sex: "f",
age: 21
}];
//foeach 遍历方法
// Array.prototype.myFoEach = function(func) {
// var len = this.length;
// var _this = arguments[1] != undefined ? arguments[1] : window;
// for (var i = 0; i < len; i++) {
// func.apply(_this, [this[i], i, this]); //他执行完apply之后才能改变this指向所以这的this还是以前的this
// }
// }
// obj = {
// name: "asf"
// };
// personArr.myFoEach(function(ele, index, self) {
// // console.log(ele, index, self, this);
// });
//fifter 过滤方法封装
// Array.prototype.myFilter = function(func) {
// var arr = [];
// var len = this.length;
// var _this = arguments[1] != undefined ? arguments[1] : window;
// for (var i = 0; i < len; i++) {
// func.apply(_this, [this[i], i, this]) && arr.push(this[i]);
// }
// return arr;
// }
// var obj = {
// name: "cse"
// }
// var newArr = personArr.myFilter(function(ele, index, self) {
// return ele.sex == "f";
// })
// console.log(newArr);
//map方法 map映射,他的返回值决定了新数组中的值
// Array.prototype.myMap = function(func) {
// var len = this.length;
// var arr = [];
// var _this = arguments[1] != undefined ? arguments[1] : window;
// for (var i = 0; i < len; i++) {
// arr.push(func.apply(_this, [this[i], i, this]));
// }
// return arr;
// }
// var newArr = personArr.myMap(function(ele, index, self) {
// ele.age += 10;
// return ele;
// })
// console.log(newArr);
//
//every 目的:判断数组中的元素是否都符合 返回true或false(有一个false就不循环了)
// some 有一个符合就返回true(有一个true就不循环了)
// Array.prototype.myEvery = function(func) {
// var len = this.length;
// var _this = arguments[1] != undefined ? arguments[1] : window;
// var flag = true;
// for (var i = 0; i < len; i++) {
// if (func.apply(_this, [this[i], i, this]) == false) {
// flag = false;
// break;
// }
// }
// return flag;
// }
// var newArr = personArr.myEvery(function(ele, index, self) {
// return ele.age > 18;
// })
// console.log(newArr);
//reduce方法 preValue 前一个值 icurValue当前值 index下标 self自己
// var obj = {
// age: 0
// }
// var returnValue = personArr.reduce(function(preValue, icurValue, index, self) {
// return preValue; //返回的是什么就决定了下一次函数执行的时候preValue是什么
// }, obj) //preValue最开始的值就是obj的初始值
// console.log(returnValue); //最后一次函数返回的值
// reduce用法例子(不能改变this指向)
//原生reduce方法封装
// Array.prototype.myReduce = function(func, initialVlaue) {
// var len = this.length,
// nextValue = initialVlaue;
// for (var i = 0; i < len; i++) {
// nextValue = func(nextValue, this[i], i, this);
// }
// return nextValue;
// }
var cookieStr = "_ga=GA1.3.1508234119.1621843762; __gads=ID=52b80f6701c2b0f3-22ef5a0cd9c80005;T=1621843761;RT=1621843761;S=ALNI_MYrNpENnlV5PqCm2CLfHRA0LYiW7g; _gid=GA1.3.50017673.1626517288; ASPSESSIONIDSWSBBASD=GPBICAADHFLHCOPELEMDGEEJ; _gat33_1=1"
//给cookieStr变成一个对象
function parseCookieStr(str) {
var obj = {};
var cookieArr = str.split(';');
cookieArr.reduce(function(preValue, icurValue, index, self) {
var arr = icurValue.split("=");
preValue[arr[0]] = arr[1];
return preValue;
}, obj)
return obj;
}
var cookieObj = parseCookieStr(cookieStr);
js收官数组,foeach,fifter,map,some,every,reduce方法
最新推荐文章于 2024-10-15 09:57:04 发布