通过JS获取当前IP地址及相关信息

一、JS获取当前IP地址

在互联网上,IP地址是标识计算机或者其他设备的一组编号,也是因特网协议(IP协议)家族的统称。

使用JavaScript可以轻松地获取当前用户的IP地址。下面是获取当前IP地址的代码:

function getIPAddress() {
    fetch('https://api.ipify.org?format=json')
        .then(response => response.json())
        .then(data => console.log(data.ip))
        .catch(error => console.error(error));
}
getIPAddress();

代码解释:

上面的代码中使用了ES6的fetch API来发送HTTP请求来获取JSON格式的响应。然后解析响应并讲IP地址打印在控制台上。

二、JS获取当前时间

获取当前时间可以帮助我们处理时间相关的问题,比如在网页中显示时间等操作。

使用JavaScript获取当前时间的方法很简单。下面是获取当前时间的代码:

const now = new Date();
console.log(now);

代码解释:

上面的代码中使用了Date()函数来获取当前时间,然后将其存储在now变量中。最后,我们将其打印在控制台上。

三、JS获取当前年份

获取当前年份也是常见的操作。在网页中,我们经常需要当前年份来显示版权信息或者其他相关信息。

使用JavaScript获取当前年份的方法也很简单。下面是获取当前年份的代码:

const now = new Date();
const year = now.getFullYear();
console.log(year);

代码解释:

上面的代码中,我们使用了Date()函数获取当前时间,然后通过调用getFullYear()方法来获取当前年份。最后将其打印在控制台上。

四、JS获取当前时间戳

时间戳是计算机存储时间的一种方式。它表示从某个固定时间点到当前时间之间的时间间隔(秒数或毫秒数)。

JavaScript中,可以使用Date对象的 getTime() 方法获取当前时间戳。具体方法如下:

const now = new Date();
const timestamp = now.getTime();
console.log(timestamp);

代码解释:

上面的代码中,我们使用了Date()函数获取当前时间,然后通过调用 getTime() 方法获取当前时间戳。最后将其打印在控制台上。

五、JS获取当前位置信息

在移动端的Web应用中,获取当前位置信息非常重要。它可以帮助我们实现很多有趣的功能,比如显示当前附近的商家、查找当地的热门景点等。

使用JavaScript可以轻松地获取当前位置信息。具体方法如下:

function getLocation() {
    if (navigator.geolocation) {
        navigator.geolocation.getCurrentPosition(showPosition);
    } else {
        console.log("Geolocation is not supported by this browser.");
    }
}
function showPosition(position) {
    console.log("Latitude: " + position.coords.latitude + "\nLongitude: " + position.coords.longitude);
}
getLocation();

代码解释:

上面的代码中,我们使用了navigator.geolocation对象来获取位置信息。如果浏览器支持此功能,则调用getCurrentPosition()方法来获取当前位置的经度和纬度。最后将其打印在控制台上。

六、JS获取当前年度

获取当前年度(即当前所在周的年份)也是常见的操作。比如在日历应用中,我们需要获取当前周的年份。下面是获取当前年度的代码:

const now = new Date();
const year = now.getFullYear();
const week = Math.ceil((now - new Date(year, 0, 1)) / 86400000 / 7);
console.log(year + " 年第 " + week + " 周");

代码解释:

上面的代码中,我们首先使用Date对象获取当前时间的年份。然后使用Math.ceil()函数将时间差(以周为单位)向上舍入。最后将结果打印在控制台上。

七、JS获取当前URL路径

获取当前URL路径可以帮助我们在网页中实现跳转等相关操作。下面是获取当前URL路径的代码:

const currentUrl = window.location.href;
console.log(currentUrl);

代码解释:

上面的代码中,我们使用window.location.href属性获取当前URL路径,并将其打印在控制台上。

八、JS获取用户的IP地址

除了获取当前用户的IP地址,我们还可以获取访问我们网站的用户的IP地址。下面是获取用户IP地址的代码:

function getUserIP() {
    fetch('https://api.ipify.org?format=json')
        .then(response => response.json())
        .then(data => console.log(data.ip))
        .catch(error => console.error(error));
}
getUserIP();

代码解释:

上面的代码中,我们使用fetch()函数获取一个API接口返回的JSON对象。然后解析出其中的IP地址,并将其打印在控制台上。

九、JS获取本地IP

获取本地IP可以帮助我们在网络通信中实现各种有用的功能。下面是获取本地IP的代码:

function getLocalIP() {
    window.RTCPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || 
                               window.webkitRTCPeerConnection;
    if (typeof window.RTCPeerConnection == "undefined") {
        console.error("Your browser does not support RTCPeerConnection.");
        return;
    }
    let pc = new RTCPeerConnection();
    pc.createDataChannel("");
    pc.createOffer()
        .then(function(offer) {
            return pc.setLocalDescription(offer);
        })
        .then(function() {
            let lines = pc.localDescription.sdp.split("\n");
            lines.forEach(function(line) {
                if (line.indexOf("a=candidate") == 0) {
                    let match = line.match(/([0-9\.]+)[^\d]*$/);
                    if (match && match.length > 1) {
                        console.log(match[1]);
                    }
                }
            });
        })
        .catch(function(reason) {
            console.error(reason);
        });
}
getLocalIP();

代码解释:

上面的代码中,我们使用RTCPeerConnection对象来获取本地IP地址。我们创建一个新的RTCPeerConnection对象和一个别名通道,并创建一个新的SDP offer来激活连接。最后,通过解析SDP字符串来获取本地IP地址。

原创文章,作者:HICW,如若转载,请注明出处:https://www.506064.com/n/137905.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
HICWHICW
上一篇 2024-10-04 00:18
下一篇 2024-10-04 00:18

相关推荐

  • JS Proxy(array)用法介绍

    JS Proxy(array)可以说是ES6中非常重要的一个特性,它可以代理一个数组,监听数据变化并进行拦截、处理。在实际开发中,使用Proxy(array)可以方便地实现数据的监…

    编程 2025-04-29
  • cmd看地址

    本文将从多个方面详细阐述cmd看地址,包括如何查看本机IP地址、如何查看路由器IP、如何查看DNS服务器IP等等。 一、查看本机IP地址 要查看本机IP地址,首先需要打开cmd窗口…

    编程 2025-04-29
  • 尚硅谷官网地址用法介绍

    尚硅谷是国内一家领先的技术培训机构,提供了众多IT职业的培训,包括Java、Python、大数据、前端、人工智能等方向。其官网地址为http://www.atguigu.com/。…

    编程 2025-04-29
  • Centos7配置静态ip

    本文将详细阐述如何在Centos7系统中配置静态ip。 一、查看网络接口 在配置静态ip之前,我们首先需要查看系统中的网络接口,以确定我们需要配置的网卡是哪一个。 ifconfig…

    编程 2025-04-29
  • 解析js base64并转成unit

    本文将从多个方面详细介绍js中如何解析base64编码并转成unit格式。 一、base64编码解析 在JavaScript中解析base64编码可以使用atob()函数,它会将b…

    编程 2025-04-29
  • Node.js使用Body-Parser处理HTTP POST请求时,特殊字符无法返回的解决方法

    本文将解决Node.js使用Body-Parser处理HTTP POST请求时,特殊字符无法返回的问题。同时,给出一些相关示例代码,以帮助读者更好的理解并处理这个问题。 一、问题解…

    编程 2025-04-29
  • Python检测IP连通

    Python是一门强大的编程语言,常用于网络开发、数据分析等领域。IP地址是网络通信的基础,在网络通信中,有时需要检测IP地址是否连通。下面将从多个方面介绍Python检测IP连通…

    编程 2025-04-28
  • t3.js:一个全能的JavaScript动态文本替换工具

    t3.js是一个非常流行的JavaScript动态文本替换工具,它是一个轻量级库,能够很容易地实现文本内容的递增、递减、替换、切换以及其他各种操作。在本文中,我们将从多个方面探讨t…

    编程 2025-04-28
  • Idea2022变更Git地址

    本文将从以下几个方面对Idea2022变更Git地址进行详细阐述: 一、GitHub上修改Git仓库地址 1、登录GitHub,找到需要修改的Git仓库 2、在代码页面点击右上角的…

    编程 2025-04-28
  • Treck TCP/IP Stack 输入验证错误漏洞CVE-2020-11901解析

    本文将对Treck TCP/IP Stack 输入验证错误漏洞CVE-2020-11901进行详细解析,并提供相关代码示例。 一、漏洞背景 Treck TCP/IP Stack是一…

    编程 2025-04-27

发表回复

登录后才能评论