js常用函數(shù)匯總
來源:易賢網(wǎng) 閱讀:1361 次 日期:2015-04-21 10:03:26
溫馨提示:易賢網(wǎng)小編為您整理了“js常用函數(shù)匯總”,方便廣大網(wǎng)友查閱!

/**

* 根據(jù)電話號(hào)碼獲取位置信息

* @param phoneNo 電話號(hào)碼

* @param succFunc 調(diào)用接口成功的回調(diào)函數(shù)

* 回調(diào)函數(shù)入?yún)⒌臄?shù)據(jù)格式如下:

* {

"mobile": "18576648552",

"province": "廣東",

"isp": "中國聯(lián)通",

"stock": "1",

"amount": "10000",

"maxprice": "0",

"minprice": "0",

"cityname": "深圳"

}

*/

function getPositionByPhoneNo(phoneNo, succFunc)

{

$.ajax({

url: "",

type: "post",

data: {mobile: phoneNo, amount: 10000},

dataType: "jsonp",

jsonp: "callname",

jsonpCallback: "getPhoneNumInfoExtCallback",

success: function(data){

if(succFunc)

{

succFunc(data);

}

},

error: function(xhr, errorCode){

console.log("根據(jù)手機(jī)號(hào)獲取歸屬地服務(wù)失敗【前端】");

if(succFunc)

{

succFunc({});

}

}

});

}

/**

* 將數(shù)字金額進(jìn)行千位分隔

* @param number 需要分隔的數(shù)字

* @return 返回分割后的數(shù)字

*/

function formatFloatToThousand(number)

{

number = number.toString();

var resultArray = [];

var pointPosi = number.indexOf("."); // 取得小數(shù)點(diǎn)的位置

var int = pointPosi == -1 ? number : number.substring(0, pointPosi); // 取得小數(shù)中的整數(shù)部分

var float = pointPosi == -1 ? '' : number.substring(pointPosi + 1, number.length);

var remainSum = int.length % 3; // 超過 3 的位數(shù)

if(int.length < 3)

{

return number;

}

if(remainSum == 0)

{

resultArray = resultArray.concat(int.match(/d{3}/g));

}

else

{

resultArray.push(int.substring(0, remainSum));

int = int.substring(remainSum);

resultArray = resultArray.concat(int.match(/d{3}/g));

}

return pointPosi == -1 ? resultArray.join(',') : resultArray.join(',') + '.' + float;

}

/**

* 測(cè)量文本的寬度

* @param $source 需要測(cè)量文本寬度的 jquery 對(duì)象

*/

function measureTxtWidth($source)

{

var txtWidth = null;

var text = $source.text();

var $span = $("<span>" + text + "</span>").appendTo("body");

$span.css({whiteSpace: "nowrap", font: $source.css("font")});

txtWidth = $span.width();

$span.remove();

return txtWidth;

}

使用新浪開放 api 獲取當(dāng)前位置:

返回的數(shù)據(jù)格式如下:

{

"ret": 1,

"start": "180.149.132.0",

"end": "180.149.159.255",

"country": "中國", // 國家

"province": "北京", // 省份

"city": "北京", // 城市

"district": "",

"isp": "電信", // 運(yùn)營商

"type": "企業(yè)",

"desc": "中國電信集團(tuán)電信"

}

/**

* 獲取地理定位信息,使用騰訊地圖進(jìn)行定位

* @param getSuccFunc 獲取成功的回調(diào)函數(shù)回調(diào)函數(shù)

*/

function getGeolocation(getSuccFunc)

{

var succResult = {}; // 請(qǐng)求位置成功的結(jié)果

var geolocation = new soso.maps.Geolocation();

var positionParam = {

locationMode: "CLIENT_IP" // ip定位

};

var positionCallback = function(data, status){

if(status === "OK")

{

if(data && data.latLng)

{

succResult.latitude = data.latLng.lat; // 緯度

succResult.longitude = data.latLng.lng; // 經(jīng)度

}

}

if(getSuccFunc)

{

getSuccFunc(succResult);

}

};

geolocation.position(positionParam, positionCallback);

}

/**

* 將數(shù)字轉(zhuǎn)換成字符串的通用方法

* 說明:直接使用 toFixed 方法會(huì)進(jìn)行四舍五入,因此寫一個(gè)將數(shù)字轉(zhuǎn)換為指定小數(shù)位數(shù)字符串的方法

* @param sourceData 源數(shù)據(jù)

* @param decimalLen 小數(shù)的位數(shù)

*/

function numberToString(sourceData, decimalLen)

{

decimalLen = typeof(decimalLen) == undefined ? 0 : decimalLen;

var result = sourceData + "";

var integerStr = null; // 整數(shù)部分

var decimalStr = null; // 小數(shù)部分

if(result.indexOf(".") == -1)

{

result = Number(result).toFixed(decimalLen);

}

else

{

integerStr = result.substring(0, result.indexOf(".")); // 整數(shù)部分

decimalStr = /.d+/.exec(result); // 小數(shù)部分

decimalStr = Number(decimalStr);

decimalStr = decimalStr.toPrecision(decimalLen).substr(0, decimalLen + 2);

result = integerStr + decimalStr.substr(1);

}

return result;

}

/**

* 根據(jù)電話號(hào)碼獲取位置信息,使用拍拍開放 api

* @param phoneNo 電話號(hào)碼

* @param succFunc 調(diào)用接口成功的回調(diào)函數(shù)

* 回調(diào)函數(shù)入?yún)⒌臄?shù)據(jù)格式如下:

* {

"mobile": "18576648552",

"province": "廣東",

"isp": "中國聯(lián)通",

"stock": "1",

"amount": "10000",

"maxprice": "0",

"minprice": "0",

"cityname": "深圳"

}

*/

function getPositionByPhoneNo(phoneNo, succFunc)

{

$.ajax({

url: "",

type: "post",

data: {mobile: phoneNo, amount: 10000},

dataType: "jsonp",

jsonp: "callname",

jsonpCallback: "getPhoneNumInfoExtCallback",

success: function(data){

if(succFunc)

{

succFunc(data);

}

},

error: function(xhr, errorCode){

console.log("根據(jù)手機(jī)號(hào)獲取歸屬地服務(wù)失敗【前端】");

}

});

}

更多信息請(qǐng)查看IT技術(shù)專欄

更多信息請(qǐng)查看腳本欄目
易賢網(wǎng)手機(jī)網(wǎng)站地址:js常用函數(shù)匯總
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

2025國考·省考課程試聽報(bào)名

  • 報(bào)班類型
  • 姓名
  • 手機(jī)號(hào)
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 加入群交流 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)