国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

記錄平時開發的一些問題(二)

ddongjian0000 / 1660人閱讀

摘要:在頁面上選擇一個值,確定關閉窗口后將選擇的這個值返回到父窗口。此時服務器處于狀態。


1.為了提高用戶體驗,使得點擊單選框圈圈旁邊的文字也能把點選框選中

    第一種方式:
    
    第二種方式:
    

2.MySQL的FIND_IN_SET()函數,推薦這篇博客,講的不錯 https://www.cnblogs.com/xiaox...

3.onload="this.height=this.contentWindow.document.body.scrollHeight" 自動獲取屏幕高度,以防高度計算不一致

4.Joiner.on(",").join(list); 適用于list轉string

5.基于JS實現回到頁面頂部的五種寫法(從實現到增強):https://blog.csdn.net/u011666...

6.echart橫坐標太長導致坐標顯示不完全(兩種方法):https://blog.csdn.net/qq_3789...

7.top.document.location.href="";(iframe刷新父頁面)

8.//將時間戳轉換為時間
function timestampToTime(timestamp) {

var date = new Date(timestamp);//時間戳為10位需*1000,時間戳為13位的話不需乘1000
var Y = date.getFullYear() + "-";
 var M = (date.getMonth()+1 < 10 ? "0"+(date.getMonth()+1) : date.getMonth()+1) + "-";
 var D = date.getDate() < 10 ?  "0"+date.getDate()+ " " : date.getDate()+ " ";
 var h = date.getHours() < 10 ? "0"+date.getHours()+ ":" : date.getHours()+ ":";
 var m = date.getMinutes() < 10 ? "0"+date.getMinutes()+ ":" : date.getMinutes()+ ":";
 var s = date.getSeconds()< 10 ? "0"+date.getSeconds() : date.getSeconds();
 return Y+M+D+h+m+s;

}
9.你的系統如何支撐高并發?https://juejin.im/post/5c45aa...

10.這個問題是在做公司產品的公眾號時讓用戶每次刷到手機最低端再繼續加載數據,所以要計算什么時候刷到最低端
//文檔高度
function getDocumentTop() {

var scrollTop = 0, bodyScrollTop = 0, documentScrollTop = 0;
if (document.body) {
    bodyScrollTop = document.body.scrollTop;
}
if (document.documentElement) {
    documentScrollTop = document.documentElement.scrollTop;
}
scrollTop = (bodyScrollTop - documentScrollTop > 0) ? bodyScrollTop : documentScrollTop;    return scrollTop;

}
//可視窗口高度
function getWindowHeight() {

var windowHeight = 0;    if (document.compatMode == "CSS1Compat") {
    windowHeight = document.documentElement.clientHeight;
} else {
    windowHeight = document.body.clientHeight;
}
return windowHeight;

}
//滾動條滾動高度
function getScrollHeight() {

var scrollHeight = 0, bodyScrollHeight = 0, documentScrollHeight = 0;
if (document.body) {
    bodyScrollHeight = document.body.scrollHeight;
}
if (document.documentElement) {
    documentScrollHeight = document.documentElement.scrollHeight;
}
scrollHeight = (bodyScrollHeight - documentScrollHeight > 0) ? 
bodyScrollHeight : documentScrollHeight;    
return scrollHeight;

}
window.onscroll = function () {

//監聽事件內容
if(getScrollHeight() == getWindowHeight() + getDocumentTop()){在這里寫邏輯}

11.手機app可以使用以下這個方法讓父頁面獲取子頁面傳來的值,也就是從A頁面里點擊按鈕彈出B頁面,在B頁面點擊某條數據,可以將這條數據傳回父頁面顯示。但是在微信公眾號并不支持。最終只能使用別的方法。

怎么用window.open()在當前窗口打開新的頁面?
用window.open("","_self")或者window.location.replace("newurl")

然后用window.open方式 向父窗口返回值。例如:

頁面A.htm 用 window.open方式彈出頁面 B.htm 。
在頁面B.htm上選擇一個值,確定關閉窗口后將選擇的這個值返回到父窗口A.htm。
A.htm得到返回的值后,給本頁面上的文本框賦值。

1.在A.htm里建一個函數:

function sele(NO){ //NO為返回值

alert(NO);//可以直接賦值給表單
 var re= new Array();//如果需返回多個變量,則采用數組把各個變量分開
 re=NO.split(",");
 form1.feild1.value=re[0];
 form1.feild2.value=re[1];//form1為本面表單名,feild1、2為表單元素

}

調用window.open部分

var height = 300;
var width = 500;
var url = "UploadPicTest.aspx";

var winOption = "height=" + height + ",width=" + width + ",top=50,left=50,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,fullscreen=0";
window.open(url, window, winOption);




2.在B,htm 加以下代碼

function re(NOre){

 window.opener.sele(NOre);
 window.close();"

}



12.最近做一個web開發,在做表單提交的時候,出現了類似于F5刷新頁面效果的問題,極大的坑,每次點提交按鈕會自動刷新,弄得沒有值傳到后臺。(因為前臺開發沒有分離,所以一個js文件最少也有五六千行,出了bug很難找到問題,所以真心建議前臺開發要分離開來)

問題:點擊提交按鈕,出現了F5刷新頁面的效果

問題原因:將提交按鈕button放到了form表單內

解決辦法:將button按鈕放到form表單外即可

解釋:button按鈕有兩種類型,submit和button

submit類型的按鈕可以在表單之內,因為這是表單提交默認的按鈕,做提交事件的時候,直接就是對本表單的提交


...

button類型的按鈕如果要做為提交按鈕的話,就必須放在表單之外,表單一般設置一個id,做提交的時候,需要用表單的id做提交事件


...

13.HTTP Referer是header的一部分,當瀏覽器向web服務器發送請求的時候,一般會帶上Referer,告訴服務器該網頁是從哪個頁面鏈接過來的,服務器因此可以獲得一些信息用于處理。

14.https://blog.csdn.net/ljheee/...:Redis持久化----RDB和AOF 的區別

15.https://www.cnblogs.com/xiaol...:Windows10上使用Linux子系統(WSL)

16.XSS(非法字符),CSRF(引誘用戶進入某個非法網址),SYN 攻擊是一種典型的 DoS/DDoS 攻擊:在三次握手過程中,服務器發送 SYN-ACK 之后,收到客戶端的 ACK 之前的 TCP 連接稱為半連接(half-open connect)。此時服務器處于 SYN_RCVD 狀態。當收到 ACK 后,服務器才能轉入 ESTABLISHED 狀態.

SYN 攻擊指的是,攻擊客戶端在短時間內偽造大量不存在的IP地址,向服務器不斷地發送SYN包,服務器回復確認包,并等待客戶的確認。由于源地址是不存在的,服務器需要不斷的重發直至超時,這些偽造的SYN包將長時間占用未連接隊列,正常的SYN請求被丟棄,導致目標系統運行緩慢,嚴重者會引起網絡堵塞甚至系統癱瘓。

17.如果要匹配的ID或選擇器不符合 CSS 語法(比如不恰當地使用了冒號或者空格),你必須用反斜杠將這些字符轉義。由于 JavaScript 中,反斜杠是轉義字符,所以當你輸入一個文本串時,你必須將它轉義兩次(一次是為 JavaScript 字符串轉義,另一次是為 querySelector 轉義):


18.https://blog.csdn.net/qq_3314...:jdk8對list的各種處理實例詳解,包括去重,排序,過濾,分組,統計

19.list去重可以使用set(不可重復的),treeSet(不可重復且排序)

20.最近在使用oracle數據庫開發,碰到一些坑:

oracle使用hql的find方法分組查詢會報錯,因為hql會全部查一遍字段,oracle只允許出現在groupby后面的字段查詢,所以使用searchPaginatedSQL(hql,params)

oracle使用count并且條件查詢:count(decode(u.end_state, "2", 1, null))
字段名等于某個值就加一否則null

to_date("1970-1-1","yyyy-mm-dd"),oracle需要使用todate進行時間比對

oracle實體類需要創建索引@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="mseq")//主鍵生成策略

@SequenceGenerator(name="mseq",sequenceName="SUPERVISION_MAIN_S",allocationSize=1)

在navicat中--創建序列
create sequence book_seq start with 1 INCREMENT by 1;

--創建觸發器
create or replace TRIGGER book_trigger
before INSERT on BOOK
for each row
begin
SELECT book_seq.nextval into :new.BOOKID from dual;
end;

21.HashMap和Hashtable區別?

到這里我們分析了HashMap和Hashtable的原理,現在比較以下他們的區別。

不同點
繼承的類不一樣:HashMap繼承的AbstractMap抽象類,Hashtable繼承的Dictionay抽象類
應對多線程處理方式不一樣:HashMap是非線程安全的,Hashtable是線程安全的,所以Hashtable效率比較低
定位算法不一樣:HashMap通過key的hashCode()進行hash()得到哈希地址,數組下標=哈希地址 & (容量 - 1),采用的是與運算,所以容量需要是2的冪次方結果才和取模運算結果一樣。而Hashtable則是:數組下標=(key的hashCode() & 0x7FFFFFFF ) % 容量,采用的取模運算,所以容量沒要求
鍵值對規則不一樣:HashMap允許鍵值為null,而Hashtable不允許鍵值為null
哈希表擴容算法不一樣:HashMap的容量擴容按照原來的容量2,而Hashtable的容量擴容按照原來的容量2+1
容量(capacity)默認值不一樣:HashMap的容量默認值為16,而Hashtable的默認值是11
put方法實現不一樣:HashMap是將節點插入到鏈表的尾部,而Hashtable是將節點插入到鏈表的頭部
底層結構不一樣:HashMap采用了數組+鏈表+紅黑樹,而Hashtable采用數組+鏈表

為什么HashMap允許null鍵值呢,而Hashtable不允許null鍵值呢?這里還得先介紹一下什么是null,我們知道Java語言中有兩種類型,一種是基本類型還有一種是引用類型,其實還有一種特殊的類型就是null類型,它不代表一個對象(Object)也不是一個對象(Object),然后在HashMap和Hashtable對鍵的操作中使用到了Object類中的equals方法,所以如果在Hashtable中置鍵值為null的話就可想而知會報錯了,但是為什么HashMap可以呢?因為HashMap采用了特殊的方式,將null轉為了對象(Object),具體怎么轉的,這里就不深究了。

相同點
實現相同的接口:HashMap和Hashtable均實現了Map接口
負載因子(loadFactor)默認值一樣:HashMap和Hashtable的負載因子默認都是0.75
采用相同的方法處理哈希沖突:都是采用鏈地址法即拉鏈法處理哈希沖突
相同哈希地址可能分配到不同的鏈表,同一個鏈表內節點的哈希地址不一定相同:因為HashMap和Hashtable都會擴容,擴容后容量變化了,相同的哈希地址取到的數組下標也就不一樣。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/106845.html

相關文章

  • 自己平時收集css、html筆記(適合初級前端攻城獅)

    摘要:實習了一年時間,陸陸續續記錄下來一堆筆記,不過也丟失了一些以后會持續更新擴展,現在把碰到的知識點歸納于此,方便翻閱一部分取消自動識別數字為撥打號碼移動開發響應式布局二部分字母強制大寫解決中滑動速度慢或者卡的問題防止復制,兼  實習了一年時間,陸陸續續記錄下來一堆筆記,不過也丟失了一些... 以后會持續更新、擴展,現在把碰到的知識點歸納于此,方便翻閱 一、html部分   1.取消iPhone...

    番茄西紅柿 評論0 收藏0
  • 凌晨1點突發致命生產事故,人工多線程來破局!

    摘要:留下幾個人監控數據,其他人就散了,等遷移完成后再進行后續工作。突發事故凌晨的夜晚比較困,當我點起第三根煙的時候,負責遷移的這位程序員,急匆匆的跑過來找我了。這個事可大了如果在上午之前不搞定這個事情,那就完全是重大事故了。 有一個讀者問我:你認為一個程序員具備什么樣的能力,才算得上是厲害的程序員? 我答:擁有解決問題的能力的程序員。 這個回答貌似有點抽象,不要緊看下面的文章你會慢慢有所了...

    dendoink 評論0 收藏0
  • 移動常見疑難問題

    摘要:是在系列事件發生后大約才觸發的,混用和就會導致點透問題。獲取視圖原始高度方案二能較好地處理滾動的問題。禁止蒙層底下頁面跟隨滾動原因彈窗是常見的交互方式,而蒙層是彈窗必不可少的元素。 平時的開發過程中,經常會遇到一些疑難雜癥,在這里記錄一下常用的解決方案。 UI小姐姐要求的0.5px線 原因:不同手機的兼容不一樣,尤其安卓 IOS的Safari表現是比較好的,safari是可以支持浮...

    klivitamJ 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<