Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
家好,很高興又見面了,我是姜茶的編程筆記,我們一起學習前端相關(guān)領(lǐng)域技術(shù),共同進步,也歡迎大家關(guān)注、點贊、收藏、轉(zhuǎn)發(fā),您的支持是我不斷創(chuàng)作的動力
在 JavaScript 中,Array.prototype.reverse 方法用于反轉(zhuǎn)數(shù)組中元素的順序。為了幫助你更好地理解這個方法的內(nèi)部機制,我們將從零開始實現(xiàn)一個自定義的 reverse 方法,并逐步解析其實現(xiàn)步驟。
reverse 方法將數(shù)組中元素的順序從前到后反轉(zhuǎn)。以下是我們自定義實現(xiàn)的 reverse 方法的代碼:
Array.prototype.myReverse=function() {
// 將傳入的數(shù)組轉(zhuǎn)換為對象
if (this==null) {
throw new TypeError('Array.prototype.myReverse called on null or undefined');
}
const O=Object(this);
const len=O.length >>> 0;
let middle=Math.floor(len / 2);
let lower=0;
let upper=len - 1;
while (lower < middle) {
// 獲取當前元素
const lowerValue=O[lower];
const upperValue=O[upper];
// 交換元素
O[lower]=upperValue;
O[upper]=lowerValue;
// 更新索引
lower++;
upper--;
}
return O;
};
1. 檢查數(shù)組是否為 null 或 undefined
確保 this 不為空:
if (this==null) {
throw new TypeError('Array.prototype.myReverse called on null or undefined');
}
2. 將 this 轉(zhuǎn)換為對象,并獲取數(shù)組長度
將 this 轉(zhuǎn)換為對象并獲取數(shù)組長度:
const O=Object(this);
const len=O.length >>> 0;
3. 初始化左右指針
設(shè)置左右指針 lower 和 upper,以及中間點 middle:
let middle=Math.floor(len / 2);
let lower=0;
let upper=len - 1;
4. 交換元素
使用 while 循環(huán)交換數(shù)組中 lower 和 upper 指針指向的元素,直到 lower 指針不再小于 middle:
while (lower < middle) {
const lowerValue=O[lower];
const upperValue=O[upper];
O[lower]=upperValue;
O[upper]=lowerValue;
lower++;
upper--;
}
5. 返回反轉(zhuǎn)后的數(shù)組
返回反轉(zhuǎn)后的數(shù)組:
return O;
下面是一個示例,展示如何使用自定義的 myReverse 方法:
const arr=[1, 2, 3, 4, 5];
const reversedArr=arr.myReverse();
console.log(reversedArr); // 輸出 [5, 4, 3, 2, 1]
在這個示例中,我們使用 myReverse 方法反轉(zhuǎn)了數(shù)組元素的順序。結(jié)果返回 [5, 4, 3, 2, 1],這與原生 reverse 方法的行為一致。
你可以使用 reverse 方法輕松地反轉(zhuǎn)數(shù)組中的字符串。例如,反轉(zhuǎn)數(shù)組中的每個字符串元素:
const words=['hello', 'world', 'javascript'];
const reversedWords=words.map(word=> word.split('').reverse().join(''));
console.log(reversedWords); // 輸出 ['olleh', 'dlrow', 'tpircsavaj']
通過這種方式,我們可以反轉(zhuǎn)數(shù)組中的每個字符串,簡化字符串處理過程。
通過實現(xiàn)自定義的 reverse 方法,我們深入理解了 JavaScript 中數(shù)組的操作方式。相信你也可以更好地掌握 reverse 方法的內(nèi)部機制,并提升你的 JavaScript 編程技巧。如果你有任何問題或建議,歡迎在評論區(qū)留言交流!祝你編程愉快!
TML5聲明與編碼設(shè)置
HTML5的DOCTYPE聲明
<!DOCTYPE html>
語言的聲明方式
<html lang="zh-CN">
lang屬性設(shè)置為zh-CN,表示文件內(nèi)容使用簡體中文
網(wǎng)頁編碼的聲明
<meta charset="GB2312">
<meta charset="UTF-8">
HTML5編號列表新增的屬性
<ol type="i" start="4"></ol>
type 設(shè)置值有5種
1 默認值。數(shù)字有序列表。(1、2、3、4)
a 按字母順序排列的有序列表,小寫。(a、b、c、d)
A 按字母順序排列的有序列表,大寫。(A、B、C、D)
i 羅馬字母,小寫。(i, ii, iii, iv)
I 羅馬字母,大寫。(I, II, III, IV)
HTML5新增的屬性
start 設(shè)定編號的起始值。默認值:start=1
reversed 反向排序,數(shù)字改為由大到小(IE9不支持)。設(shè)定值reversed
HTML5與HTML4的差異
1.語法簡化
HTML,XHTML的DOCTYPE,html,meta,script等標記,在HTML5中有大同謀的簡化;
2.統(tǒng)一網(wǎng)頁內(nèi)嵌影音和語法
以前我們在網(wǎng)頁中播放影音時,需要使用Active或Plug-in的方式來完成;
3.新增<header>,<foot>,<section>,<article>等語義標記
4.HTML5廢除了一些舊的標記
HTML5中已經(jīng)去除了<font>,<big>,<u>等.
5.全新的表單設(shè)計
對于網(wǎng)頁程序設(shè)計者來說,表彰是最常用的功能,在這方面,HTML5做了很大的更改,不但新增了幾項新的標記,原來的<form>標記也增加了許多屬性;
6.利用<canvas>標記繪制圖形
HTML5新增了具有繪圖功能的<canvas>標記,利用它可以搭配Javascript語法在網(wǎng)頁上畫出線條和圖形;
7.提供API開發(fā)網(wǎng)頁應(yīng)用程序
為了讓網(wǎng)頁程序設(shè)計者開發(fā)網(wǎng)頁設(shè)計應(yīng)用程序,HTML5提供了多種API供設(shè)計者使用,例如Web SQL Database讓設(shè)計者可以脫機訪問客戶端的數(shù)據(jù)庫.
量化評分網(wǎng)站:http://html5test.com HTML5一共555個新特性, 每個小點算一個, 不分權(quán)重。
https://caniuse.com/
自哥倫比亞大學的一組研究人員與邁阿密大學米勒醫(yī)學院的一名同事合作,發(fā)現(xiàn)了人類頭發(fā)因壓力而變白、在壓力消除后又恢復自然顏色的證據(jù)。
這篇論文于5月19日發(fā)表在預印版服務(wù)器bioRxiv上,題目為“Human Hair Graying is Naturally Reversible and Linked to Stress”,人的頭發(fā)變白是自然可逆的,并與壓力有關(guān)。
多年來,傳統(tǒng)觀點認為,經(jīng)歷壓力事件會導致頭發(fā)變白,比如,歷史上有伍子胥遭遇多番變故一夜白頭,武俠小說中有練霓裳被心愛之人刺了一劍,悲痛之下一夜白頭,成了白發(fā)魔女,西方則有斷頭王后瑪麗·安托瓦內(nèi)特。
一直現(xiàn)在,人們都認為頭發(fā)變白是不可逆轉(zhuǎn)的。但在最近的這項新研究中,研究人員發(fā)現(xiàn)有證據(jù)表明,一旦壓力事件結(jié)束,與壓力相關(guān)的灰白頭發(fā)就會恢復自然顏色。
研究人員正在研究黑色素和某些蛋白質(zhì)在頭發(fā)自然顏色形成中的作用。他們讓14名志愿者拔去他們頭上的毛發(fā)和身體其他部位的毛發(fā)。
研究人員收集了400個頭發(fā)樣本,并用一種新的成像技術(shù)檢測頭發(fā)不同部位的色素水平進行分析。他們發(fā)現(xiàn),一些毛發(fā)的頂端是灰色的,而不是根部。
頭發(fā)從根部長出來,因此,研究人員的這一發(fā)現(xiàn)表明,頭發(fā)在某一時刻變白了,之后又恢復了自然顏色的生長。在得到這一發(fā)現(xiàn)之后,研究人員聯(lián)系了同樣的14名志愿者,讓他們回來回答一些問題。
由于頭發(fā)以一定的速度生長,研究人員能夠計算出一個人的頭發(fā)開始變白的時間,以及頭發(fā)恢復自然顏色的時間。他們問志愿者在頭發(fā)變白的時候或前后是否經(jīng)歷過壓力事件,并找到了幾個相匹配的事件。
他們還發(fā)現(xiàn),有一個人的頭發(fā)在度假時恢復了自然顏色。研究人員表示,他們的研究結(jié)果表明,壓力確實會導致頭發(fā)變白,消除壓力因素可以讓頭發(fā)恢復自然的顏色。他們指出,這種逆轉(zhuǎn)似乎只適用于因壓力而變白的頭發(fā),而且只有在頭發(fā)變白后不久才會發(fā)生。
今年1月,哈佛大學的一項研究則證明了壓力是如何隨著時間的推移加速頭發(fā)變白的過程。干細胞生物學家Ya-Chieh Hsu發(fā)現(xiàn),壓力會導致參與“戰(zhàn)斗或逃跑”反應(yīng)的神經(jīng)釋放出一種激素,這種激素會清除用來制造發(fā)色素的干細胞。
由于壓力被認為是加速衰老的一種形式,這一發(fā)現(xiàn)為減緩甚至停止與年齡有關(guān)的正常衰老的治療帶來了希望。更重要的是,它可以揭示衰老是如何耗盡全身的干細胞的,或許還能為抗衰老治療指明方向。
哈佛大學的研究小組通過一系列實驗發(fā)現(xiàn)了壓力對小鼠毛色的影響。在接下來的幾天里,這些動物一直處于緊張狀態(tài),周一至周五每天被限制四個小時,或者是潮濕的被褥、快速更換照明設(shè)備和傾斜籠子。
起初,科學家們懷疑壓力會引發(fā)免疫系統(tǒng)對頭發(fā)色素細胞的攻擊,但當他們發(fā)現(xiàn)沒有免疫細胞的小鼠在經(jīng)歷了幾次壓力后仍然會變白時,就排除了這種可能性。接下來他們研究了皮質(zhì)醇,一種對壓力做出反應(yīng)的荷爾蒙。這被證明是另一個死胡同:沒有皮質(zhì)醇的小鼠仍然長出了白頭發(fā)。
研究人員最終在構(gòu)成交感神經(jīng)系統(tǒng)的一組神經(jīng)中找到了罪魁禍首。作為“戰(zhàn)斗或逃跑”反應(yīng)的一部分,準備身體行動的神經(jīng)進入皮膚的毛囊,并在這里造成傷害。
毛囊中有一個凸起,是干細胞的聚集地。當一根新頭發(fā)形成時,其中一些干細胞就會轉(zhuǎn)變成色素生成細胞,也就是所謂的黑色素細胞。頭發(fā)的顏色取決于黑色素細胞產(chǎn)生的吸收光線的黑色素化合物的混合。
試驗表明,壓力會導致交感神經(jīng)系統(tǒng)將一種叫做去甲腎上腺素的荷爾蒙泵入毛囊。去甲腎上腺素的突然分泌有一種特別的效果。這種激素能將大量的干細胞轉(zhuǎn)化為黑素細胞,但它們一生成就開始從卵泡中游離并分解。下一次,當毛囊想要長出一根頭發(fā)時,幾乎沒有干細胞可以產(chǎn)生新的色素細胞了。所以,頭發(fā)就變白了。
此外,壓力不僅致使頭發(fā)變白,還與三種類型的脫發(fā)有關(guān)。第一種是休止期脫發(fā)。在休止期,顯著的壓力將大量的毛囊推入靜止期。幾個月之內(nèi),只是簡單地梳頭或洗頭,頭發(fā)就會突然脫落。
第二種是拔毛發(fā)癖。拔毛癖是一種無法抗拒的沖動,會讓人情不自禁地從頭皮、眉毛或身體其他部位把毛發(fā)拔出來。揪頭發(fā)可以是一種處理負面或不舒服感覺的方法,比如壓力、緊張、孤獨、無聊或挫折。
第三種是斑禿。許多因素被認為是導致斑禿的原因,可能包括嚴重的壓力。斑禿時,身體的免疫系統(tǒng)會攻擊毛囊,導致脫發(fā)。
與壓力讓頭發(fā)變白,一旦壓力消失頭發(fā)顏色又會長回來一樣,壓力和脫發(fā)也不一定是永久性的。如果你能控制住自己的壓力,你的頭發(fā)可能會重新長出來。
編譯/前瞻經(jīng)濟學人APP資訊組
原文來源:
https://medicalxpress.com/news/2020-06-hair-greying-due-stress-reversed.html
https://www.theguardian.com/science/2020/jan/22/stress-speeds-up-hair-greying-process-science-confirms
https://www.biorxiv.org/content/10.1101/2020.05.18.101964v1
*請認真填寫需求信息,我們會在24小時內(nèi)與您取得聯(lián)系。