您的位置:

通过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地址。