養成一個習慣需要多久?

有人說養成一個習慣需要21天,有人說30天……養成習慣到底需要多少天?

_hzw?2012-11-09 18:04

又快到年末了。

年初時,你曾許諾要養成一些好習慣,比如要常運動、多讀書、少微博。有人說說養成一個習慣只需要堅持21天;21天不長,不過有時候一忙就間斷個三五天,然后你又重新拾起;21天不短,有時候真的有太多雜事了,最后……到年末的時候,你的愿望實現了多少?

誰說21天養成一個習慣?

關于習慣的傳說,最著名的當然就是“形成或改變一個習慣只需要21天”。這句話常被認為是出自美國心理學家威廉?詹姆斯(William James),可是從來就沒有人找到過出處(詹姆斯:“我才沒有說過這句名言呢!”)。另一個可能的出處,是美國的一位整容醫生麥斯威爾?莫爾茨(Maxwell Maltz)的一本書Psycho-cybernetics,書里面寫到,莫爾茨觀察整容后的人,發現他們平均需要21天來習慣他們的新臉孔,而截肢病人具有的“幻肢”體驗往往需要21天才消退。需要注意的是,習慣某物與形成一個習慣是不一樣的,也許這兩個概念在傳播的過程中發生了混淆,才有了今天的這個說法。

很不幸,心理學研究發現,習慣形成所需要的時間也許遠遠多于21天。

養成一個習慣究竟需要多久?

倫敦大學學院的健康心理學家費莉帕?勒理(Phillippa Lally)及其同事,招募了96名參與者,讓他們每天重復一項與健康相關的活動,持續84天,看又多少人可以形成習慣。參與者可以選擇晚飯餐前做50個仰臥起坐、早餐后散步10分鐘或者飯前做15分鐘的運動。因為每天重復的內容是參與者自己選擇的,所以研究者認為這些行為對他們而言是有內在激勵作用的,除此之外,沒有任何其他的外在激勵。參與者每天登錄一個網站,報告他們是否完成了前一天的任務,以及填寫一份測量行為自動化的量表。量表的條目諸如“我想都不用想就完成了(I do it without thinking)”或“不去做反而很困難(I'd find it hard not to do)”

研究發現,堅持到最后的參與者都呈現出了相似的模式:行為的早期重復貢獻了更大程度的自動化分數,隨著行為的不斷重復,自動化的增加程度不斷遞減,直到達到穩定,則認為習慣已經形成。平均而言,全部參與者需要66天的時間來形成這些習慣。

當然,不同參與者所需的時間是不一樣的。有一位參與者只用了18天就達到了自動化,而有一些參與者到了第84天還沒有成功,根據統計推斷,他們可能需要在第254天才能達到自動化。行為本身的難度也會影響習慣形成的時間。研究表明,早餐后散步10分鐘成比早餐前先做50個仰臥起坐更容易成為習慣,也許有些行為本身就是更容易自動化,而另一些則需要我們付出更多的努力才能實現。

這個研究還有另外一些發現。威廉?詹姆斯在1890年出版的一本書里面說過,行為必須不間斷地重復才能變成習慣,而勒理的研究則發現間或缺個一天半天并沒有太大的影響,無論是在習慣形成的早期還是后期。但間斷的時間必須是短暫的,英國謝菲爾德大學的心理學家克里斯托弗?阿米蒂奇(Christopher Armitage)研究發現,如果讓參與者停上一個星期,自動化的效果就打很大的折扣了。

神經科學的研究認為,習慣的形成與腦內神經間新放電模式的建立有關。麻省理工大學的神經科學家安?格雷比爾(Ann Graybiel)的團隊發現,當習慣形成的時候,基底神經節會形成新的神經活動模式,而當習慣消退,這些模式也會發生變化;如果重新習得同樣的行為,這些腦內的連接會更快地形成。

總之,對于希望養成某些習慣的人們來說,堅持才是王道。堅持21天就可以形成一個習慣固然美好,可終究只是一個傳說,要養成好習慣,我們需要付出更多的力氣和努力。淡然(我一點也淡然不了!),如果我們中間堅持不下去也不要氣餒,因為再次拾起也比全新的開始要簡單一點。

參考文獻:

Barnes T, Kubota Y, Hu D, Jin DZ and Graybiel AM. (2005) Activity of striatal neurons reflects dynamic encoding and recoding of procedural memories. Nature. 437:1158-1161.

Lally, P., van Jaarsveld, C., Potts, H., and Wardle, J. (2010). How are habits formed: Modelling habit formation in the real world. European Journal of Social Psychology DOI: 10.1002/ejsp.674

編譯來源:

UCL News-How long does it take to form a habit?

PsyBlog-How Long to Form a Habit?

PsychCentral-How long does it take an action to become a habit 21 28 or 66 days?

本文轉自:http://mooc.guokr.com/opinion/380606/

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/247211.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/247211.shtml
英文地址,請注明出處:http://en.pswp.cn/news/247211.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

vue3 eslint The template root requires exactly one element問題

vue項目中手動引入eslint npm install eslint --save-dev eslint初始化 npx eslint --init 運行時npm run lint 簡單語法問題--fix會自動修復 但是vue3項目出現只能有一個根節點的問題 原因在于 eslintrc.js里extends中plugin:vue/essential的問題 看eslint-plugin-vue官網…

你所知道的學習方法,都是錯的!

你所知道的學習方法,都是錯的! 上課的時候記筆記?哪門功課不行,就集中精力專項突擊?自習的時候不要晃,選好一個地兒安安穩穩地待那兒學習?你還在這樣學習嗎?不要被騙了:這…

BZOJ 1683.City skyline 城市地平線

傳送門 從左到右掃一遍,考慮什么時候會和之前形成同一幢房子從而不用統計 顯然是當前的高度和之前某個點高度相同,并且它們之間沒有更矮的建筑 考慮用一個單調棧維護一個單調上升的房子輪廓,然后對于掃到的每一個高度,看看棧里有沒…

Vue3 eslint 編譯器宏和 defineProps,defineEmits,no-undef 規則警告

.eslintrc.js修改 定義全局globals module.exports {globals: {defineProps: readonly,defineEmits: readonly,defineExpose: readonly,withDefaults: readonly},env: {browser: true,es2021: true},extends: [plugin:vue/vue3-strongly-recommended, standard],parserOptio…

Java生鮮電商平臺-SpringCloud微服務開發中的數據架構設計實戰精講

Java生鮮電商平臺-SpringCloud微服務開發中的數據架構設計實戰精講 Java生鮮電商平臺: 微服務是當前非常流行的技術框架,通過服務的小型化、原子化以及分布式架構的彈性伸縮和高可用性,可以實現業務之間的松耦合、業務的靈活調整組合以及系統的高可用性…

JS兩個對象數組過濾掉相同的對象

let arr1 [{uid:1,name:張三},{uid:2,name:李四}]; let arr2 [{id:1,name:張三},{id:2,name:王五,age:23},{id:3,name:羅翔}]; 去掉arr2中包含的arr1相同name的對象: //ES6的方法,得到新數組 const newArr arr2.filter((item) > {return !arr1.some(ele>…

亞倫?斯沃茨:提升時間的品質

亞倫?斯沃茨:提升時間的品質 不休不眠地工作是低效的,怎樣發揮時間的最大效率? 伏維閣主 2013-01-18 16:45圖片來源:personalitytutor.com (亞倫?斯沃茨Aaron Swartz / 文)《 怎樣有效利用時間 》中給出的…

useEffect中使用異步函數

useEffect是不能直接用 async await 語法糖的 /* 錯誤用法 ,effect不支持直接 async await*/useEffect(async ()>{/* 請求數據 */const res await getData()},[]) useEffect 的回調參數返回的是一個清除副作用的 clean-up 函數。因此無法返回 Promise&#xf…

Flex4_HttpService組件

1、在JavaWeb項目中新建Servlet(FlexLoginServelt) : public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html");response.setContentType("text…

想要提高記憶力?做夢去吧!

想要提高記憶力?做夢去吧! 豆豆助 2010-11-26 11:47經驗說:不好好學習,就知道睡覺 實驗說:要想記憶好,睡覺不能少。做夢可以增強我們的記憶。 有沒有辦法能讓人不費吹灰之力增強記憶力? 做夢吧你…

This beta version of Typora is expired, please download and install a newer version. 解決方案

原文鏈接:https://blog.csdn.net/yyywxk/article/details/125133205 問題描述 今日打開 Typora 軟件時,突然報錯,提示軟件版本已過期,需要安裝新版本,如下圖所示。 關閉錯誤提示框后會自動跳轉到:https://…

MySQL查詢count(*)、count(1)、count(field)的區別收集

count(*)對行的數目進行計算,包含NULLcount(column)對特定的列的值具有的行數進行計算,不包含NULL值。 count()還有一種使用方式,count(1)這個用法和count(*)的結果是一樣的。 任何情況下select count(*) from tablename是最優選擇&#xff1…

真想學習?扔掉你詳細的計劃吧!

真想學習?扔掉你詳細的計劃吧! 該不該定個計劃?詳細的計劃確實可以更高效,也許可以將你減肥的速度加快一倍。但是如果想學習,還是扔掉詳細的計劃吧!因為它會占用你太多的認知資源,只顧著悶頭做事…

Swift中文件和圖片上傳處理

前言:基于Alamofire4.5網絡框架開發的Swift項目中上傳文件和圖片代碼參考。 上傳文件 extension HttpRequestService {typealias UploadDoneBlock (_ dict:[String : Any]) -> Void//成功blockfunc uploadEcgFileWithGatherRecord(model :RecordModel, fileName…

下載各種在線視頻及字幕

1. http://en.savefrom.net/ 支持30多個有名的網頁呢 ,YouTube等等 Supported resourcesHow to use?filefactory.comsendspace.com youtube.commetacafe.combreak.comdailymotion.comvimeo.comsevenload.commail.rusmotri.comyandex.rurambler.rutvigle.ruintv.ru…

React Icons

發現一個Icon庫,分享下哈; 使用React-Icons輕松地在React項目中包含流行圖標,它利用es6導入,允許只包含項目正在使用的圖標。 Installation (for standard modern project) npm install react-icons --save Usage import { FaBeer } from react-ico…

對flex深入研究一點

flex頂層設計 1.在任何流動的方向上(包括上下左右)都能進行良好的布局 2.可以以逆序 或者 以任意順序排列布局 3.可以線性的沿著主軸一字排開 或者 沿著側軸換行排列 4.可以彈性的在任意的容器中伸縮大小 5.可以使子元素們在容器主軸方向上 或者 在容器側軸方向上 進行對齊 主軸…

那些你可能還不知道的新發明

The Wello WaterWheel 對世界上六分之一的人來說,取水是個苦活:步行數小時,排隊等待,負重運送。 而花費在這個基本需求上的時間讓許多兒童不得不輟學,讓女人不能負起責任來處理家務或者工作以取得收入。在很多欠發達地…

AntD中Form的input正則校驗:不能輸入空格

什么是正則表達式? 在編寫處理字符串的程序或網頁時,經常有查找符合某些復雜規則的字符串的需要。正則表達式就是用于描述這些規則的工具。換句話說,正則表達式就是記錄文本規則的代碼。 正則test() 方法 定義和用法 test() 方法用于檢測一…

引用數據類型分類

引用類既是自己定義的一個類,后面應用非常廣泛 類的定義格式 創建java文件,與類名相同 public class 類名{ 數據類型 屬性名稱1; 數據類型 屬性名稱2; … } publicclass Phone { /* * 屬性 */ String brand;// 品牌型號 String …