在本文中,将会详细讲解和整理几种常用的JavaScript函数。这些函数在前端开发中扮演着重要的角色,包括获取URL地址参数、页面跳转、判断字符串是否为数字、进行数字运算、格式化数字显示、获取当前日期和时间戳等操作。
### 获取页面地址参数
在JavaScript中,`location.href`属性包含了当前页面的完整URL,而获取URL中的查询参数通常是一个常用的需求。通过使用正则表达式,可以编写一个函数来解析URL并获取特定的参数值。
```javascript
function getUrlPara(paraName) {
var sUrl = location.href;
var sReg = "(?:\\?|&)" + paraName + "=([^&]*)";
var re = new RegExp(sReg, "gi");
re.exec(sUrl);
return RegExp.$1;
}
```
### 页面跳转
页面跳转通常使用`location.href`来实现。通过JavaScript,可以将当前页面定向到另一个URL地址。
```javascript
var pn = $("#gotopagenum").val(); // #gotopagenum是文本框的id属性
location.href = "NewList.aspx?pagenum=" + pn; // location.href实现客户端页面的跳转
```
### 判断是否数字
判断一个字符串是否为数字,常用的方法是先使用`isNaN()`函数进行验证,然后对字符串进行处理,以去除可能存在的逗号。
```javascript
function isNumeric(txt) {
if (txt == "") {
return false;
}
if (txt.indexOf(",") > 0) {
txt = txt.replace(",", "");
}
if (isNaN(txt)) {
return false;
} else {
return true;
}
}
```
### 数字格式化
数字格式化涉及到将数字转换为指定格式的字符串,例如添加千分位分隔符或者保留特定的小数位数。
```javascript
function Convert(money) {
var s = money; // 获取小数型数据
s += "";
if (s.indexOf(".") == -1) s +=".00"; // 如果没有小数点,在后面补个小数点和00
if (/\.\d$/.test(s)) s += "0"; // 正则判断
while(/\d{4}(\.|,)/.test(s)) // 符合条件则进行替换
s = s.replace(/(\d)(\d{3}(\.|,))/,"$1,$2"); // 每隔3位添加一个
return s;
}
function changeTwoDecimal_f(x) {
var f_x = parseFloat(x);
if (isNaN(f_x)) {
alert('function:changeTwoDecimal->parametererror');
return false;
}
f_x = Math.round(f_x * 100) / 100;
return f_x;
}
```
### 获取当前日期和时间戳
JavaScript中的`Date`对象可以用来获取当前的日期和时间,并且可以格式化为`yyyy-mm-dd`的形式,或者生成时间戳。
```javascript
var now = new Date();
var year = now.getYear();
if (now.getYear() < 1900) {
year = now.getYear() + 1900;
}
var month = now.getMonth() + 1;
var day = now.getDate();
if (month < 10) month = "0" + month;
if (day < 10) day = "0" + day;
function NowTimeCode() {
var Result = "";
var now = new Date();
var year = now.getYear();
if (now.getYear() < 1900) {
year = now.getYear() + 1900;
}
var month = now.getMonth() + 1;
var day = now.getDate();
var hour = now.getHours();
var minutes = now.getMinutes();
var second = now.getSeconds();
var millisecond = now.getMilliseconds();
if (month < 10) month = "0" + month;
if (day < 10) day = "0" + day;
if (hour < 10) hour = "0" + hour;
if (minutes < 10) minutes = "0" + minutes;
if (se)
```
需要注意的是,由于文档内容扫描识别可能存在的误差,上述代码中的一些函数的完整性可能受到影响。但整体而言,这些代码片段展示了如何构建实用的JavaScript函数,以满足开发中常见的各种需求。在实际应用中,你可能需要根据项目的具体需求对这些函数进行相应的调整和完善。