konsol.günlük.9 çalışan geçerli değil
Yeniden icat ettim gibi görünüyor tekerlek, ama nedense bu, Internet Explorer çalışmıyor 9, ama IE6 yapar.
function debug()
if(!window.console) {
window.console = { log: function() { /* do something */ } };
}
console.log.apply(console, arguments);
}
İlgili: Apply() question for javascript
F12 hata Ayıklayıcı bu söyledi "" (konsolu.nesne günlük) yöntemi desteklemiyor ''uygulayın. Hatta bir fonksiyonu olarak tanınmış değil mi? Başka işaretçileri veya fikirler?
CEVAP
Cevap ikinci bölümü I gave recently de bu soruyu cevaplar. Bu bir kopyası olarak görmüyorum, kolaylık sağlamak için, buraya yapıştırın verdim.:
Konsol nesne herhangi bir standart bir parçası değildir ve Belge Nesne Modeli için bir uzantısıdır. Diğer DOM nesneleri gibi, bir ana nesne olarak kabul edilir ve Nesne, ne de işlevinden yöntemleri devralır, ECMA işlevleri ve nesneleri yerli gibi yapmak için gerekli değildir. Bu nedenle uygulamak ve bu yöntemler üzerinde tanımsız arayın. IE 9, en DOM nesneleri yerli ECMA türlerinden devralan için geliştirildi. Geliştirici Araçları IE uzantısı, bir yerleşik uzantısı olsa) kabul edilir gibi, onlar açıkça DOM geri kalanı gibi aynı gelişmeler almadı.
Ne, hala İşlevini kullanabilirsiniz.küçük bir bağlama yöntemleri konsol prototip yöntemleri() magic:
var log = Function.prototype.bind.call(console.log, console); log.apply(console, ["this", "is", "a", "test"]); //-> "thisisatest"
console
tüm yöntemleri tamir edebilirsinIE 9 içinaynı şekilde:
if (Function.prototype.bind && window.console && typeof console.log == "object"){
[
"log","info","warn","error","assert","dir","clear","profile","profileEnd"
].forEach(function (method) {
console[method] = this.bind(console[method], console);
}, Function.prototype.call);
}
Bu "konak" konak "fonksiyonları. aramayı yerli fonksiyonları ile" fonksiyonları değiştirir Kodunuzda Function.prototype.bind
Array.prototype.forEach
uyumluluk uygulamaları dahil olmak üzere Internet Explorer 8'de bu çalışma alabilirsiniz, veya yukarıda yeniden yazma teknikleri bu yöntem tarafından kullanılan dahil Pasajı.
Ayrıca Bkz
- Internet Explorer 9's problematic console object - benim blog whattheheadsaid.com
console.log
typeof is "object" instead of "function" - Microsoft Connect (Live hesabı gereklidir)
Nasıl'bir çalışan değil, Windows ...
1 Düğmesi 7 İÇİN çalışan Google değil ...
Neden't Konsol değil.Writeline Ve...
Neden' ◎ܫ◎ ve fonksiyonu t JavaSc...
Konsol kaydedin.bir günlük dosyası içi...