=Start=
缘由:
最近在做一些页面展示相关的事情,需要用js/jQuery来实现一些功能,才发现自己的前端技能和知识储备真的是太少了,于是就想着开始积累这方面的知识和代码片段方便以后使用。
正文:
=JavaScript=
1.如何在JavaScript中遍历数组
var array = [0,1,2,3,4,5,6,7,8,9]; var length = array.length; for (var i=0; i < length; i++) { console.log(array[i]); }
2.用JavaScript生成指定日期字符串
var today = new Date(); var lastWeek = new Date(today.getFullYear(), today.getMonth(), today.getDate() - 7); var lastMonth = new Date(today.getFullYear(), today.getMonth() - 1, today.getDate()); console.log(today.toISOString()); console.log(today.toISOString().substring(0, 10)); console.log(lastWeek.toISOString().substring(0, 10)); console.log(lastMonth.toISOString().substring(0, 10));
3.定时发起ajax请求
// setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。 // setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。 setInterval(func_name, 30000); 或 setInterval(function() { $.ajax({ type: 'POST', url: 'test.php', data: { data: "test_data" }, cache: false, success: function(result) { if (result == "true"){ alert("true"); }else{ alert("false"); } } }); }, 30000);
- http://stackoverflow.com/questions/7255548/timed-ajax-request
- HTML DOM setInterval() 方法
- http://stackoverflow.com/questions/6840140/jquery-ajax-call-with-a-timer
=jQuery=
1.用jQuery动态修改输入框中的值
$(selector).val(value)
- jQuery 属性操作 – val() 方法
- http://stackoverflow.com/questions/5691932/jquery-set-input-value-dynamically
- http://stackoverflow.com/questions/10611170/how-to-set-value-of-input-text-using-jquery
2.待添加
……
=END=
《 “JavaScript/jQuery常用代码片段” 》 有 16 条评论
jQuery方法总结大全
http://hao.jser.com/archive/12849/
You Don’t Need jQuery
该项目总结了大部分 jQuery API 替代的方法,暂时只支持 IE10+ 以上浏览器。
https://github.com/oneuijs/You-Dont-Need-jQuery/blob/master/README.zh-CN.md
纯干货!一切关于jQuery选择器
http://hao.jser.com/archive/13492/
不要过度依赖JQuery(一)
https://segmentfault.com/a/1190000008160389
jQuery中根据多个属性来选择元素
https://api.jquery.com/multiple-attribute-selector/
http://stackoverflow.com/questions/8045071/how-do-i-select-elements-on-multiple-attribute-values
http://stackoverflow.com/questions/155977/jquery-match-multiple-attributes
http://stackoverflow.com/questions/2292067/jquery-select-element-with-multiple-attributes
jQuery 选择器
http://www.w3school.com.cn/jquery/jquery_selectors.asp
一系列JavaScript项目的最佳实践
https://github.com/wearehive/project-guidelines
在前端开发中经常使用到的20个正则表达式
http://coolfishstudio.com/2016/04/27/%E7%9F%A5%E9%81%93%E8%BF%9920%E4%B8%AA%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F%EF%BC%8C%E8%83%BD%E8%AE%A9%E4%BD%A0%E5%B0%91%E5%86%991000%E8%A1%8C%E4%BB%A3%E7%A0%81/
网页中常用到的防复制代码
https://mp.weixin.qq.com/s/sA7pfuT-lCfkalUoFlRGwA
http://atkll.com/post-82.html
http://coolfishstudio.com/2016/03/16/%E7%BD%91%E9%A1%B5%E5%B8%B8%E7%94%A8%E7%9A%84%E9%98%B2%E5%A4%8D%E5%88%B6%E4%BB%A3%E7%A0%81/
JS正则表达式系列总结
https://zhuanlan.zhihu.com/p/27653434
你可以在30秒内或更少的时间内收集到的有用的Javascript代码片段(Curated collection of useful Javascript snippets that you can understand in 30 seconds or less.)
https://github.com/Chalarangelo/30-seconds-of-code
`
数组(Array)
浏览器(Browser)
日期(Date)
函数(Function)
数学(Math)
多媒体(Media)
节点(Node)
对象(Object)
字符串(String)
实用程序(Utility)
`
javascript 总结(常用工具类的封装)
https://segmentfault.com/a/1190000013041329
`
JavaScript
1. type 类型判断
2. Date
3. Array
4. String 字符串操作
5. Number
6. Http
7. DOM
8. Storage 储存操作
9. Other 其它操作
CSS
1. pc-reset PC样式初始化
2. Phone-reset
3. 公共样式提取
`
Js面试算法
https://www.liayal.com/article/5ac46c20a6cf4e67bc05c9f4
`
素数
素数因子
Fibonacci(斐波那契)
最大公约数
算法范式
去重
合并两个排序的数组
不通过临时变量交换两个数的值
字符串反向
单词反转
原位反转
第一个非重复字符
删除重复的字符
回文检查
找缺失的数字
两数之和
最大和
统计零
子字符串
排列
`
JavaScript split() 方法
http://www.w3school.com.cn/js/jsref_split.asp
`
str.split(‘分隔符’, 结果数组中包含几个元素)
“hello”.split(“”) //返回 [“h”, “e”, “l”, “l”, “o”]
“hello”.split(“”, 3) //可返回 [“h”, “e”, “l”]
`
JavaScript中的字符串子串
https://stackoverflow.com/questions/952924/javascript-chop-slice-trim-off-last-character-in-string
`
var str = “12345.00”;
str = str.slice(0, -1); // “12345.0”
// 或
str = “12345.00”;
str = str.substring(0, str.length – 1); // “12345.0”
// 或
// str.substr(start, length)
str.substr(0, 7) // “12345.0”
// 重要事项:与 slice() 和 substr() 方法不同的是,substring() 不接受负的参数。
`
JavaScript中的数组合并
https://stackoverflow.com/questions/1584370/how-to-merge-two-arrays-in-javascript-and-de-duplicate-items
`
var array1 = [“Vijendra”,”Singh”];
var array2 = [“Singh”, “Shakya”];
var array3 = array1.concat(array2); // Merges both arrays
// [ ‘Vijendra’, ‘Singh’, ‘Singh’, ‘Shakya’ ]
`
JavaScript 的 4 种数组遍历方法: for VS forEach() VS for/in VS for/of
https://blog.fundebug.com/2019/03/11/4-ways-to-loop-array-inj-javascript/
http://thecodebarbarian.com/for-vs-for-each-vs-for-in-vs-for-of-in-javascript.html
http://airbnb.io/javascript/#iterators–nope
`
我们有多种方法来遍历 JavaScript 的数组或者对象,而它们之间的区别非常让人疑惑。Airbnb 编码风格禁止使用 for/in 与 for/of,你知道为什么吗?
这篇文章将详细介绍以下 4 种循环语法的区别:
for (let i = 0; i { /* … */ })
for (let i in arr)
for (const v of arr)
结论:
简单地说,for/of是遍历数组最可靠的方式,它比for循环简洁,并且没有for/in和forEach()那么多奇怪的特例。for/of的缺点是我们取索引值不方便,而且不能这样链式调用forEach(). forEach()。
使用for/of获取数组索引,可以这样写:
for (const [i, v] of arr.entries()) {
console.log(i, v);
}
`