爸爸的爸爸的爸爸的爸爸叫什么?

效果

简介

        由于工作生活节奏不同,如今很多关系稍疏远的亲戚之间来往并不多。因此放假回家过年时,往往会搞不清楚哪位亲戚应该喊什么称呼,很是尴尬。然而搞不清亲戚关系和亲戚称谓的不仅是小孩,就连年轻一代的大人也都常常模糊混乱。

“中国家庭称谓计算器”为你避免了这种尴尬,只需简单的输入即可算出称谓。输入框兼容了不同的叫法,你可以称呼父亲为:“老爸”、“爹地”、“老爷子”等等,方便不同地域的习惯叫法。快捷输入按键,只需简单的点击即可完成关系输入,算法还支持逆向查找称呼哦~!

一、下载 & 安装

脚本库可以用于浏览器,也可以用于 Nodejs 环境中。

  1. 在网页中引入 <script src="https://passer-by.com/relationship/dist/relationship.min.js">

    获取全局方法 relationship

  2. 使用 npm 安装名为 relationship.js  的包

    npm install relationship.js

    在脚本中引入模块

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

     

二、使用

  1. 通用方法: 唯一的计算方法 relationship.

    • 选项模式 relationship(options)

    参数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('外婆和奶奶之间是什么关系?');
    // => ['儿女亲家']
  2. 内部属性:获取当前数据表 relationship.data.

  3. 内部属性:获取当前数据量 relationship.dataCount.

  4. 内部方法:用户自定义模式 relationship.setMode(mode_name,mode_data).

    代码示例(可参考数据表格式对数据进行覆盖):

    // 关系解析语法
    // 【关系链】f:父,m:母,h:夫,w:妻,s:子,d:女,xb:兄弟,ob:兄,lb:弟,xs:姐妹,os:姐,ls:妹
    // 【修饰符】 1:男性,0:女性,&o:年长,&l:年幼,#:隔断,[a|b]:并列
    relationship.setMode('northern',{
    	'm,f':['姥爷'],
    	'm,m':['姥姥'],
    	'm,xb,s&o':['表哥'],
    	'm,xb,s&l':['表弟'],
    });

三.docker使用

下载解压

wget https://github.com/mumuy/relationship/archive/refs/tags/v1.2.0.zip

unzip v1.2.0.zip

进入目录

/opt/relationship-1.2.0

构建Dockerfile


FROM nginx:1.20-alpine

# 拷贝静态文件到 /usr/share/nginx/html 目录
COPY . /usr/share/nginx/html

# 支持 history 模式路由
RUN sed -i 's|\s\+root\s\+/usr/share/nginx/html|        try_files $uri $uri/ /index.html;\n        root   /usr/share/nginx/html|' /etc/nginx/conf.d/default.conf

# 启动指令
ENTRYPOINT ["/docker-entrypoint.sh"]
CMD ["nginx", "-g", "daemon off;"]

构建镜像

docker build -t relationship:latest -f ./Dockerfile ../relationship-1.2.0

启动

docker run --name relationship -d \
-p 10018:80 \

浏览器打开

http://192.168.168.111:10018/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/354565.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++ Qt开发:SqlTableModel映射组件应用

Qt 是一个跨平台C图形界面开发库&#xff0c;利用Qt可以快速开发跨平台窗体应用程序&#xff0c;在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置&#xff0c;实现图形化开发极大的方便了开发效率&#xff0c;本章将重点介绍SqlTableModule组件的常用方法及灵活运用。 …

【NodeJS】004- NodeJS的模块化与包管理工具

模块化 1. 介绍 1.1.什么是模块化与模块 ? 将一个复杂的程序文件依据一定规则(规范)拆分成多个文件的过程称之为 模块化 其中拆分出的 每个文件就是一个模块 ,模块的内部数据是私有的,不过模块可以暴露内部数据以便其他模块使用 1.2 什么是模块化项目 ? 编码时是按照模…

Vulnhub靶场DC-9

攻击机192.168.223.128 靶机192.168.223.138 主机发现 nmap -sP 192.168.223.0/24 端口扫描 nmap -sV -p- -A 192.168.223.138 开启了22 80端口 访问一下web页面 有个查询界面 测试发现存在post型的sql注入 用sqlmap跑一下&#xff0c;因为是post型的&#xff0c;这里…

深入理解TCP网络协议

目录 1.TCP协议的段格式 2.TCP原理 2.1确认应答 2.2超时重传 3.三次握手(重点) 4.四次挥手 1.TCP协议的段格式 我们先来观察一下TCP协议的段格式图解: 源/目的端口号:标识数据从哪个进程来,到哪个进程去 32位序号/32位确认号:TCP会话的每一端都包含一个32位&#xff08…

探索半导体制造业中的健永科技RFID读写器的应用方案

一、引言 在当今高度自动化的工业环境中&#xff0c;无线射频识别&#xff08;RFID&#xff09;技术已经成为实现高效生产的重要一环。特别是在半导体制造业中&#xff0c;由于产品的高价值和复杂性&#xff0c;生产过程的追踪和管理显得尤为重要。健永科技RFID读写器以其出色…

Nginx解析漏洞复现

首先这个漏洞不是软件或代码的问题&#xff0c;是认为疏忽造成的。 一、环境搭建 从vulhub上面下载vulhub-master.zip文件&#xff0c;上传到服务器中&#xff0c;或者直接在服务器下载。 unzip vulhub-master.zip 进入漏洞目录 cd /vulhub-master/vulhub-master/nginx/ng…

十大排序算法之非线性时间比较类排序

前言 接下来就开始我们的算法学习之路了&#xff0c;代码会分别使用Java与Python来实现&#xff0c;数据处理的算法很多&#xff0c;排序是最基础且最重要的一类&#xff0c;大多数人都是通过学习排序算法入门的。接下来让我们一起学习闻名遐迩的十大排序算法&#xff0c;它们…

商家转账到零钱开通教程

商家转账到零钱是什么&#xff1f; 商家转账到零钱是微信商户号里的一个功能&#xff0c;以前叫做企业付款到零钱。从 2022 年 5 月 18 日开始&#xff0c;原企业付款到零钱升级为商家转账到零钱&#xff0c;已开通商户的功能使用不受影响&#xff0c;新开通商户可前往产品中心…

鸿蒙开发【设备开发基础知识】

一、设备开发介绍 1. 环境搭建与源码获取 环境搭建 搭建OpenHarmony 的系统环境&#xff0c;需要Windows系统与Ubuntu系统结合使用。 ​ Windows系统负责烧录、测试、与OpenHarmony在windows系统cmd模式下交互。 ​ Ubuntu系统负责源码管理、阅读、开发、编译。Ubuntu系统…

C#实现对任意区域任意大小的截图

1&#xff0c;目的: 实现类似系统截图工具那样对屏幕任何区域自定义大小的截图。 2&#xff0c;效果展示&#xff1a; 点击截图 选择需要截图的区域&#xff1a; 区域选择完成后&#xff0c;单击右键完成截图&#xff1a; 在合适的载体上粘贴截图&#xff1a; 3&#xff0c;…

周期性信号展开成傅里叶级数【可视化】

傅里叶变换的本质&#xff1a;叠加性&#xff0c;每个圆代表一个谐波分量 先详细解释下这个图 看图时&#xff0c;先确定 X X X 轴的点位&#xff0c;再垂直 Y Y Y、 Z Z Z轴找到对应的波形&#xff0c;如 x 0 x0 x0 时&#xff0c;找到了一个橙色的直线 X X X 轴 - 频率…

代码随想录算法训练营第32天 | 122.买卖股票的最佳时机II 55.跳跃游戏 45.跳跃游戏II

买卖股票的最佳时机II 贪心思路 要想使用贪心算法解决此问题&#xff0c;意识到利润是可分解的很关键。比如[1,2,3,4,5]这个输入&#xff0c;最大利润为第一天买入&#xff0c;第五天卖出。这等效于第一天买入&#xff0c;第二天卖出&#xff0c;第二天再买入。。。 prices[4]…

用navigator.sendBeacon完成网页埋点异步请求记录用户行为,当网页关闭的时候,依然后完美完成接口请求,不会因为浏览器关闭了被中断请求。

代码用例 <template><div :class"$options.name"><el-button type"primary" click"sendBeacon">navigator.sendBeacon 请求埋点接口 发送json对象数据</el-button></div> </template><script> expor…

WindowsOS

C:. ├─PerfLogs&#xff0c;系统日志文件夹 ├─Program Files&#xff0c;程序文件 ├─Program Files&#xff08;x86&#xff09;&#xff0c;程序文件&#xff08;x86&#xff09; ├─ProgramData&#xff0c;程序数据 ├─Windows&#xff0c;Windows系统文件夹 └─Us…

从零开始做题:逆向 ret2libc warmup

1.题目信息 warmup.c //gcc -fno-stack-protector -no-pie -z execstack warmup.c -o warmup #include <stdio.h>void init_proc(){setbuf(stdout, NULL);setbuf(stdin, NULL);setbuf(stderr, NULL); }int main(void) {char buf[0x100];init_proc();puts("Hello C…

python解决n以内的质数问题

对于日常的一些问题,例如求出n以内的质数问题,这都是经常会遇到的一些问题,可能会在面试的过程当中都会被问到的问题,所以针对这个比较基础的问题进行解答。 问题是需要找出n以内的所有质数(不包括n这个数),质数的定义是在大于1的自然数中,除了1和它本身以外,不再有其…

Go 为什么建议使用切片,少使用数组?

1 介绍 在 Go 语言中&#xff0c;数组固定长度&#xff0c;切片可变长度&#xff1b;数组和切片都是值传递&#xff0c;因为切片传递的是指针&#xff0c;所以切片也被称为“引用传递”。 读者朋友们在使用 Go 语言开发项目时&#xff0c;或者在阅读 Go 开源项目源码时&#…

ctfhub—RCE通关

0、前言 0.1 、什么是RCE RCE全称&#xff1a;Remote Command/Code Execute&#xff0c;远程命令执行或者代码执行。RCE漏洞&#xff0c;可以让攻击者直接向后台服务器远程注入操作系统命令或者代码&#xff0c;从而控制后台系统。 为什么会有命令执行漏洞呢&#xff1f;因为…

使用电脑时突然遇到“mfc140.dll文件丢失”的问题都有什么解决办法

当你在使用电脑时突然遇到“mfc140.dll文件丢失”的问题时&#xff0c;可能会感到困惑和苦恼。一旦出现这样的问题&#xff0c;缺少这个文件可能导致一些应用程序无法正常启动&#xff0c;影响你的工作和娱乐体验。其实这个问题是可以解决的&#xff0c;接下来我们将介绍一些可…

xxl-job相关面试题整理

什么是xxl-job&#xff1f; ​ xxl-job是一个分布式的任务调度平台&#xff0c;其核心设计目标是&#xff1a;学习简单、开发迅速、轻量级、易扩展&#xff0c;现在已经开放源代码并接入多家公司的线上产品线&#xff0c;开箱即用。xxl是xxl-job的开发者大众点评的许雪里名称的…