学习足迹

杂记

趁着清晨思路清晰来一发,这篇文章主要记录自己在闲暇时学习及在工作时遇到问题,查找资料遇见的好的一些资料、博客、文章等。


报错处理

$(document).on ‘click’, ‘.click-class’, @clickEvent #委托事件

Uncaught TypeError: ((jQuery.event.special[handleObj.origType] || (intermediate value)).handle || handleObj.handler).apply is not a function
我的理解:未找到要委托的函数


JavaScript 开发者经常忽略或误用的七个基础知识点

1. 在 String.prototype.replace 方法中使用 /g 和 /i 标志位

var str = “David is an Arsenal fan, which means David is great”;
str.replace(“David”, “Darren”); // “Darren is an Arsenal fan, which means David is great”
str.replace(/David/g, “Darren”); // “Darren is an Arsenal fan, which means Darren is great”

2. 类数组对象和 Array.prototype.slice 方法

var nodesArr = Array.prototype.slice.call(document.querySelectorAll(“div”));
// “true” array of DIVs
// 得到一个由 div 元素组成的“真正的”数组
var argsArr = Array.prototype.slice.call(arguments);
// changes arguments to “true” array
// 把 arguments 转换成一个“真正的”数组
你还可以使用一次简单的 slice 调用来克隆一个数组:
var clone = myArray.slice(0); // naive clone

3.Array.prototype.sort 方法

[1, 3, 9, 2].sort();// 返回 [1, 2, 3, 9]
[
{ name: “Robin Van PurseStrings”, age: 30 },
{ name: “Theo Walcott”, age: 24 },
{ name: “Bacary Sagna”, age: 28 }
].sort(function(obj1, obj2) {
// Ascending: first age less than the previous
// 实现增序排列:前者的 age 小于后者
return obj1.age - obj2.age;
});
// Returns:
// [
// { name: “Theo Walcott”, age: 24 },
// { name: “Bacary Sagna”, age: 28 },
// { name: “Robin Van PurseStrings”, age: 30 }
// ]

4.用 length 属性来截断数组

var myArray = yourArray = [1, 2, 3];
myArray = []; // yourArray is still [1, 2, 3]
myArray.length = 0; // yourArray and myArray both [ ]

5.使用 push 来合并数组

var mergeTo = [4,5,6];
var mergeFrom = [7,8,9];
Array.prototype.push.apply(mergeTo, mergeFrom);
mergeTo; // is: [4, 5, 6, 7, 8, 9]

6.高效探测功能特性和对象属性

if(navigator.geolocation) {
// Do some stuff
// 在这里干点事情
}

当然这可以正常工作,但它并不一定有很好的效率。因为这个对象探测方法会在浏览器中初始化资源。在过去,上面的代码片断可能会在某些浏览器下导致内存泄露。更好、更快的方法是检查对象是否包含某个键名:

if(“geolocation” in navigator) {
// Do some stuff
// 在这里干点事情
}

键名检查十分简单,而且可以避免内存泄露。另外请注意,如果这个属性的值是假值,那么前一种探测方式将会得到“否”的结果,并不能真正探测出这个键名是否存在。

7.事件对象的 preventDefault 和 stopPropagation 方法

json 在线解析工具

jsoneditoronline/

React篇


Redux

Redux中文文档


vue篇

vue文档


前端资源教程(没事就去瞅两眼)

前端资源教程

一些前端面试题的整理

html之表格边框

html-浅谈如何正确给table加边框

-- EOF --