數值處理
var num = parseInt("21121.12");
alert(num);
var num1 =new Number("12123.125");
alert(num1.toFixed(2));
var a = "123";
if (isNaN(a)) {
alert("不是數字");
}
else {
alert("是數字");
}
對像的參數
function add(num1) {
//alert(arguments.length);
var n=arguments[0];
for (var i = 1; i < arguments.length; i++) {
n += arguments[i] + "|";
}
alert(n);
}
add(1, 2, 3, 4);
匿名函數
var f1 = function (n1, n2) { return n1 + n2; };
alert(f1(2, 3));
(function (n1, n2) {
var n3= n1 + n2;
alert(n3);
})(1,2);
var f2 = new Function("p1", "return p1+5;");
alert(f2(5));
定義一個函數(對像)
function Person(name, age) {
this.name = name;
this.age = age;
this.sayHi = function () {
return this.age + "-" + this.name;
}
}
var p = new Person("張三",14);
var pp = p.sayHi();
alert(pp);
數組
var arr = new Array();
var arr = ["asdf", "234234", "fsda"];
arr.reverse()
處理數組的函數
arr.join("@") 串連起來
arr.toString() 預設輸出,
兩種for 用法
for(var i=0;i<arr.length;i++)
{
arr[i]
}
for(var i in arr)
{
arr[i] 這裡的i相當於字典鍵
}
數組的另一種用法
var dic = new Array();
dic["zs"] = "張三";
dic["ls"] = "李四";
dic["x"] = "夏";
這裡就可以用forin
不過後面我們都用 json
var jsar={name:"xt",age:18,arrer:"bj"};
判斷一種對像是否是另一種類型
jsar instanceof(Array)
json 應用
var json = {
"黑馬一期": [{ "name": "張三", "age": 18, "sex": "男" }, { "name": "李四", "age": 19, "sex": "女"}],
"黑馬二期": [{ "name": "張軍", "age": 28, "sex": "男" }, { "name": "張四", "age": 29, "sex": "女"}]
};
var arr = json["黑馬二期"]; //arr是一個數組
for (var i = 0; i < arr.length; i++) {
var o = arr[i];
alert(o.name + ":" + o.age);
}
String 對像
var str = "asdADGSE我~愛.北京";
var str = new String("asd");
alert(str.length);
alert(str.charAt(1));
alert(str.indexOf("d我",4));
alert(str.lastIndexOf("家",2));
alert(str.split("."));
alert(str.split(/~|\./));
alert(str.substr(0, 2));
alert(str.substring(0, 3));
alert(str.toLowerCase());
alert(str.toUpperCase());
prototype 擴充方法
String.prototype.quot = function (sep) {
if (!sep) {
sep = "\"";
}
return sep + this + sep;
}
var a = "abc";
alert(a.quot("!"));
擴充方法好處:
第一:可以對先前寫好的對像不改變原對像,直接擴充方法
第二:擴充方法 對new後的對像 方法共用,減少了,new之後的記憶體