JS,JQ,PHP的小知识点整理
生活随笔
收集整理的這篇文章主要介紹了
JS,JQ,PHP的小知识点整理
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在日常開發中所使用的JS,JQ,PHP的小知識點整理
持續更新……
1.js和jq獲取當前的時間戳
方法一:
<script>var timestamp = Date.parse(new Date());//result:1480977330000</script>方法二:
<script>var timestamp = (new Date()).valueOf();//result:1480977330748 </script>方法三:
<script>var timestamp = new Date().getTime();//result:1480977330748 </script>**第一種:獲取的時間戳是把毫秒改成000顯示,
第二種和第三種是獲取了當前毫秒的時間戳。**
2.js和jq獲取表單的所有元素的方法和封裝
JS獲取所有表單元素的封裝方法
<script>//獲取指定form中的所有的<input>對象 function getElements(formId) { var form = document.getElementById(formId); var elements = new Array(); var tagElements = form.getElementsByTagName('input'); for (var j = 0; j < tagElements.length; j++){ elements.push(tagElements[j]); } return elements; } //獲取單個input中的【name,value】數組 function inputSelector(element) { if (element.checked) return [element.name, element.value]; } function input(element) { switch (element.type.toLowerCase()) { case 'submit': case 'hidden': case 'password': case 'text': return [element.name, element.value]; case 'checkbox': case 'radio': return inputSelector(element); } return false; } //組合URL function serializeElement(element) { var method = element.tagName.toLowerCase(); var parameter = input(element); if (parameter) { var key = encodeURIComponent(parameter[0]); if (key.length == 0) return; if (parameter[1].constructor != Array) parameter[1] = [parameter[1]]; var values = parameter[1]; var results = []; for (var i=0; i<values.length; i++) { results.push(key + '=' + encodeURIComponent(values[i])); } return results.join('&'); } } //調用方法 function serializeForm(formId) { var elements = getElements(formId); var queryComponents = new Array(); for (var i = 0; i < elements.length; i++) { var queryComponent = serializeElement(elements[i]); if (queryComponent) queryComponents.push(queryComponent); } return queryComponents.join('&'); } </script>以上的代碼可以把表單的所有數據拼接到一個URL串上,如:
result:user=zjw&psw=123145&phone=1323442123
JQ獲取表單所有值
<script>$(function() {$('#submit').click(function() {var d = {};var t = $('form').serializeArray();$.each(t, function() {d[this.name] = this.value;});alert(JSON.stringify(d));});});</script>result:{user:1,psw:15466,phone:13565674471}
補充一個小知識點:
而JSON.stringify(arr)是從一個對象解析出JSON字符串,是帶[]的
另外JSON.parse() 是用于從一個字符串中解析出json對象
還有一個更加簡便的方法
$("#my_form").serialize();這個方法可以獲得form的所有提交值,而且可以直接用于AJAX
var my_data = $("#my_form").serialize();//ajax提交$.ajax({url:"{:U('do_post_info')}",data:data,type:'post',dataType:'json',success:function(res){alert(res);}});這個方法應用于不想提交表單,而獲取到表單值
PHP的兩個格式化數字的好方法
sprintf()函數
sprintf(format,arg1,arg2,arg++)| format | 必需。轉換格式。 |
| arg1 | 必需。規定插到 format 字符串中第一個 % 符號處的參數。 |
| arg2 | 可選。規定插到 format 字符串中第二個 % 符號處的參數。 |
| arg++ | 可選。規定插到 format 字符串中第三、四等等 % 符號處的參數。 |
說明:參數 format 是轉換的格式,以百分比符號 (“%”) 開始到轉換字符結束。下面的可能的 format值:
- %% - 返回百分比符號
- %b - 二進制數
- %c - 依照 ASCII 值的字符
- %d - 帶符號十進制數
- %e - 可續計數法(比如 1.5e+3)
- %u - 無符號十進制數
- %f - 浮點數(local settings aware)
- %F - 浮點數(not local settings aware)
- %o - 八進制數
- %s - 字符串
- %x - 十六進制數(小寫字母)
- %X - 十六進制數(大寫字母)
arg1, arg2, ++ 等參數將插入到主字符串中的百分號 (%) 符號處。該函數是逐步執行的。在第一個 % 符號中,插入 arg1,在第二個 % 符號處,插入 arg2,依此類推。
//生成4位數,不足前面補0 $var=sprintf("%04d", 2); echo $var;//結果為0002 echo date('Y_m_d', time()).'_'.sprintf('d', rand(0,99)); echo sprintf('%05s',444);//輸出5為字符串,不足以0補充格式數字 number_format()
$number = 1234.56; // english notation (default) $english_format_number = number_format($number); // 1,235 // French notation $nombre_format_francais = number_format($number, 2, ',', ' '); // 1 234,56 $number = 1234.5678; // english notation without thousands seperator $english_format_number = number_format($number, 2, '.', ''); // 1234.57 《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的JS,JQ,PHP的小知识点整理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ThinkPHP开发中遇到的小坑
- 下一篇: 【laravel】我和laravel的旅