這個中國親戚關係計算器讓你告別“社死”

来源:https://www.cnblogs.com/codechen8848/p/18065098
-Advertisement-
Play Games

大家好,我是 Java陳序員。 由於為了生活奔波,常年在外,導致很多關係稍疏遠的親戚之間來往並不多。 因此節假日回家時,往往會搞不清楚哪位親戚應該喊什麼稱呼,很容易“社死”。 今天給大家介紹一個親戚關係計算器,讓你快速的計算出正確的親戚稱謂! 關註微信公眾號:【Java陳序員】,獲取開源項目分享、A ...


大家好,我是 Java陳序員

由於為了生活奔波,常年在外,導致很多關係稍疏遠的親戚之間來往並不多。

因此節假日回家時,往往會搞不清楚哪位親戚應該喊什麼稱呼,很容易“社死”。

今天給大家介紹一個親戚關係計算器,讓你快速的計算出正確的親戚稱謂!

關註微信公眾號:【Java陳序員】,獲取開源項目分享、AI副業分享、超200本經典電腦電子書籍等。

項目介紹

relationship —— 中國親戚關係計算器,只需簡單的輸入即可算出稱謂。

輸入框相容了不同的叫法,你可以稱呼父親為:“老爸”、“爹地”、“老爺子”等等,方便不同地域的習慣叫法。

快捷輸入按鍵,只需簡單的點擊即可完成關係輸入,演算法還支持逆向查找稱呼哦~

功能特色:

  • 使用別稱查詢:姥姥的爸爸的老竇 = 外曾外曾祖父
  • 使用合稱查詢:姐夫的雙親 = 姊妹姻父 / 姊妹姻母
  • 大小數字混合查詢:大哥的二姑媽的七舅姥爺 = 舅曾外祖父
  • 不限制祖輩孫輩跨度查詢:舅媽的婆婆的外甥的姨媽的侄子 = 舅表舅父
  • 根據年齡推導可能性:哥哥的表姐 = 姑表姐 / 舅表姐
  • 根據語境確認性別:老婆的女兒的外婆 = 岳母
  • 支持古文式表達:吾父之舅父 = 舅爺爺
  • 解析某稱謂關係鏈:七舅姥爺 = 媽媽的媽媽的兄弟
  • 算兩個親戚間的合稱關係:奶奶 + 外婆 = 兒女親家

項目地址:

https://github.com/mumuy/relationship

線上體驗:

https://passer-by.com/relationship/

移動端體驗地址:

https://passer-by.com/relationship/vue/

功能體驗

1、關係找稱呼

2、稱呼找關係

3、兩者間關係

4、兩者的合稱

安裝使用

1、直接引入安裝

<script src="https://passer-by.com/relationship/dist/relationship.min.js">

獲取全局方法 relationship.

2、使用 npm 包管理安裝

安裝依賴:

npm install relationship.js

包引入:

// CommonJS 引入
const relationship = require("relationship.js");
// ES Module 引入
import relationship from 'relationship.js';

3、使用方法:唯一的計算方法 relationship.

  • 選項模式 relationship(options)

    構造函數:

    var options = {
        text:'',		// 目標對象:目標對象的稱謂漢字表達,稱謂間用‘的’字分隔
        target:'',	    // 相對對象:相對對象的稱謂漢字表達,稱謂間用‘的’字分隔,空表示自己
        sex:-1,			// 本人性別:0表示女性,1表示男性
        type:'default',	// 轉換類型:'default'計算稱謂,'chain'計算關係鏈,'pair'計算關係合稱
        reverse:false,	// 稱呼方式:true對方稱呼我,false我稱呼對方
        mode:'default',	// 模式選擇:使用setMode方法定製不同地區模式,在此選擇自定義模式
        optimal:false,  // 最短關係:計算兩者之間的最短關係
    };
    

    代碼示例:

    // 如:我應該叫外婆的哥哥什麼?
    relationship({text:'媽媽的媽媽的哥哥'});
    // => ['舅外公']
    
    // 如:七舅姥爺應該叫我什麼?
    relationship({text:'七舅姥爺',reverse:true,sex:1});
    // => ['甥外孫']
    
    // 如:舅公是什麼親戚
    relationship({text:'舅公',type:'chain'});
    // => ['爸爸的媽媽的兄弟', '媽媽的媽媽的兄弟', '老公的媽媽的兄弟']
    
    // 如:舅媽如何稱呼外婆?
    relationship({text:'外婆',target:'舅媽',sex:1});
    // => ['婆婆']
    
    // 如:外婆和奶奶之間是什麼關係?
    relationship({text:'外婆',target:'奶奶',type:'pair'});
    // => ['兒女親家']
    
  • 語句模式 relationship(exptession)

    參數 exptession 句式可以為:xxx是xxx的什麼人、xxx叫xxx什麼、xxx如何稱呼xxx等。

    代碼示例:

    // 如:舅媽如何稱呼外婆?
    relationship('舅媽如何稱呼外婆?');
    // => ['婆婆']
    
    // 如:外婆和奶奶之間是什麼關係?
    relationship('外婆和奶奶之間是什麼關係?');
    // => ['兒女親家']
    

4、其他 API

// 獲取當前數據表 
relationship.data

// 獲取當前數據量 
relationship.dataCount

// 用戶自定義模式 
relationship.setMode(mode_name,mode_data)

最後

推薦的開源項目已經收錄到 GitHub 項目,歡迎 Star

https://github.com/chenyl8848/great-open-source-project

或者訪問網站,進行線上瀏覽:

https://chencoding.top:8090/#/

大家的點贊、收藏和評論都是對作者的支持,如文章對你有幫助還請點贊轉發支持下,謝謝!


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • Android 二維碼相關(一) 本篇文章主要記錄下android下使用zxing來創建二維碼. 1: 導入依賴 api "com.google.zxing:core:3.5.1" 2: 創建二維碼 創建QRCodeWriter對象 QRCodeWriter qrCodeWriter = new Q ...
  • linux 入門(七) 1: 安裝ffmpeg ubuntu下安裝ffmpeg: sudo apt-get install ffmpeg 2: ffmpeg --help ffmpeg version 4.2.7-0ubuntu0.1 Copyright (c) 2000-2022 the FFmp ...
  • 這裡給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 一、介紹 Decorator,即裝飾器,從名字上很容易讓我們聯想到裝飾者模式 簡單來講,裝飾者模式就是一種在不改變原類和使用繼承的情況下,動態地擴展對象功能的設計理論。 ES6中Decorator功能亦如此,其本質也不是什麼高大上的結構, ...
  • 本文討論了前端架構的重要性,並提出了選擇Vue組件庫時需考慮的因素。重點介紹了ViewDesign這一優秀的Vue組件庫,概述了其特點及如何實現高效前端架構。完整版文章鏈接可在本文結尾處獲取。 ...
  • 在 2023 年的年底,我用 Vite-SSG + Vue3 + Vuetify3 把之前使用 SPA 編寫的官網進行了重構,支持多語言,響應式並且對 SEO 和社交媒體分享十分友好 ...
  • Vue.js 是一個漸進式 JavaScript 框架,適用於構建用戶界面,特別適合開發企業級 Web 應用程式。它具有漸進式設計、虛擬 DOM、響應式數據綁定和組件化等優勢。ViewDesign(原名 iView)是一個基於 Vue.js 的企業級 UI 組件庫,提供全面的組件庫、企業級設計規範、... ...
  • 本文探討了前端發展的新趨勢,以及 Vue.js 生態中 ViewDesign 這一優秀 UI 組件庫的崛起。首先闡述了現代 Web 應用對前端開發提出的新需求,以及 Vue.js 作為漸進式框架在滿足這些需求方面的優勢。接著重點介紹了 ViewDesign 作為基於 Vue.js 的 UI 組件庫的... ...
  • 開源項目地址:https://gitee.com/easyxaf/jsplumb-navigator 前言 jsPlumb可用於連接DOM元素,它不依賴框架,所以與主流框架都可以無縫的集成。但比較遺憾的是社區版中沒有平移、縮放等功能,如果用它來開發工作流等項目,用戶體驗會大打折扣。我的項目是用Bla ...
一周排行
    -Advertisement-
    Play Games
  • 下麵是一個標準的IDistributedCache用例: public class SomeService(IDistributedCache cache) { public async Task<SomeInformation> GetSomeInformationAsync (string na ...
  • 這個庫提供了在啟動期間實例化已註冊的單例,而不是在首次使用它時實例化。 單例通常在首次使用時創建,這可能會導致響應傳入請求的延遲高於平時。在註冊時創建實例有助於防止第一次Request請求的SLA 以往我們要在註冊的時候實例單例可能會這樣寫: //註冊: services.AddSingleton< ...
  • 最近公司的很多項目都要改單點登錄了,不過大部分都還沒敲定,目前立刻要做的就只有一個比較老的項目 先改一個試試手,主要目標就是最短最快實現功能 首先因為要保留原登錄方式,所以頁面上的改動就是在原來登錄頁面下加一個SSO登錄入口 用超鏈接寫的入口,頁面改造後如下圖: 其中超鏈接的 href="Staff ...
  • Like運算符很好用,特別是它所提供的其中*、?這兩種通配符,在Windows文件系統和各類項目中運用非常廣泛。 但Like運算符僅在VB中支持,在C#中,如何實現呢? 以下是關於LikeString的四種實現方式,其中第四種為Regex正則表達式實現,且在.NET Standard 2.0及以上平... ...
  • 一:背景 1. 講故事 前些天有位朋友找到我,說他們的程式記憶體會偶發性暴漲,自己分析了下是非托管記憶體問題,讓我幫忙看下怎麼回事?哈哈,看到這個dump我還是非常有興趣的,居然還有這種游戲幣自助機類型的程式,下次去大玩家看看他們出幣的機器後端是不是C#寫的?由於dump是linux上的程式,剛好win ...
  • 前言 大家好,我是老馬。很高興遇到你。 我們為 java 開發者實現了 java 版本的 nginx https://github.com/houbb/nginx4j 如果你想知道 servlet 如何處理的,可以參考我的另一個項目: 手寫從零實現簡易版 tomcat minicat 手寫 ngin ...
  • 上一次的介紹,主要圍繞如何統一去捕獲異常,以及為每一種異常添加自己的Mapper實現,並且我們知道,當在ExceptionMapper中返回非200的Response,不支持application/json的響應類型,而是寫死的text/plain類型。 Filter為二方包異常手動捕獲 參考:ht ...
  • 大家好,我是R哥。 今天分享一個爽飛了的面試輔導 case: 這個杭州兄弟空窗期 1 個月+,面試了 6 家公司 0 Offer,不知道問題出在哪,難道是杭州的 IT 崩盤了麽? 報名面試輔導後,經過一個多月的輔導打磨,現在成功入職某上市公司,漲薪 30%+,955 工作制,不咋加班,還不捲。 其他 ...
  • 引入依賴 <!--Freemarker wls--> <dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <version>2.3.30</version> </dependency> ...
  • 你應如何運行程式 互動式命令模式 開始一個互動式會話 一般是在操作系統命令行下輸入python,且不帶任何參數 系統路徑 如果沒有設置系統的PATH環境變數來包括Python的安裝路徑,可能需要機器上Python可執行文件的完整路徑來代替python 運行的位置:代碼位置 不要輸入的內容:提示符和註 ...