目錄
1、array-like資料轉換為陣列,常見的array-like資料有nodelist,agruments,具有索引,長度屬性的物件;
2、型別判斷
for迴圈
2. array.prototype.slice.call()
3.array.from()
4. set,針對可迭代物件
typeof,主要用來檢測基本型別,如
var type = ,
cons: new array()
} var res =
object.keys(type).foreach(key => )
console.log(res) // ["string", "number", "boolean", "string", "object", "symbol", "undefined", "object", "object", "object", "object"]
2. instanceof ,用於測試建構函式的prototype屬性是否出現在物件的原型鏈中的任何位置
var ******str = "this is a ****** string";
var mystring = new string();
var newstr = new string("string created with constructor");
var mydate = new date();
var myobj = {};
var mynonobj = object.create(null);
******str instanceof string; // 返回 false, 檢查原型鏈會找到 undefined
mystring instanceof string; // 返回 true
newstr instanceof string; // 返回 true
mystring instanceof object; // 返回 true
myobj instanceof object; // 返回 true, 儘管原型沒有定義
({}) instanceof object; // 返回 true, 同上
mynonobj instanceof object; // 返回 false, 一種建立物件的方法,這種方法建立的物件不是object的乙個例項
mystring instanceof date; //返回 false
mydate instanceof date; // 返回 true
mydate instanceof object; // 返回 true
mydate instanceof string; // 返回 false
3. object.prototype.tostring.call() ,除了以下的值,object.prototype.tostring.call()還可以檢測arguments,nodelist等
1.bind原始碼實現
if (!function.prototype.bind)
var aargs = array.prototype.slice.call(arguments, 1),
ftobind = this,
fnop = function() {},
fbound = function() ;
// 維護原型關係
if (this.prototype)
// 下行的**使fbound.prototype是fnop的例項,因此
// 返回的fbound若作為new的建構函式,new生成的新物件作為this傳入fbound,新物件的__proto__就是fnop的例項
fbound.prototype = new fnop();
return fbound;
};}
2. call原始碼實現
if (!function.prototype.call)
/*var result = eval('content.fn('+args+')');
delete content.fn;*/
var result = context.fn(...args)
delete context.fn
return result;
}}
var content = context || window;
content.fn = this;
var args = arguments[1]
if (!args) else
delete context.fn
return result;}}
IMD中一些JS方法總結
1,日期格式化 如格式成2013 12 27 15 30,new date format yyyy mm dd hh mm ss 這種格式在safari瀏覽器上會出問題,可用.format yyyy mm dd hh mm ss 代替 1 date.prototype.format function...
個人總結的一些實用js方法
最近專案告一段落,在這期間寫了很多js,但是回頭想想,發現其中相當多的一部分是在重複編寫,低效並且無意義,於是花了半天的時間,將一部分我個人覺得用的比較多的js方法總結了一下,部分方法基於jquery 1.3.2,今後將不斷更新,主要的方法列表如下 方法名 功能說明 openmodelwindow ...
一些常用js方法
使用命名空間 var global global.namespace function str else 陣列相關 判斷元素是否存在 第一種寫法 為系統陣列物件新增原型擴充套件方法 array.prototype.inarray function value return false 第二種 自定義...