2014-02-07 4 views
-3

я вижу это в Chrome отладчик, не зная, что this: r означает именноJavascript, что это значит

this: r 
$el: o.fn.init[1] 
cid: "view1" 
el: div#appview 
results_collection: r 
_byId: Object 
length: 1 
models: Array[1] 
resultsList: r 
$el: o.fn.init[1] 
cid: "view2" 
el: div#page.page 
__proto__: s 
constructor: function(){return i.apply(this,arguments)} 
el: "#page" 
initialize: function(){ 
renderList: function (collection) { 
__proto__: Object 
__proto__: s 
__proto__: s 

Я также видел это в underscore.js, *sources означает аргументы переменной длины?

_.extend(destination, *sources) 

Приходите на людей, я спрашиваю здесь, потому что я не мог ничего существенного, в чем со всеми ненавидя Google, серьезно.

+1

Обозначение '* x' в документах подчёркивания означает« любое число », поэтому' _.extend' можно вызывать любое количество объектов 'source' для объединения в' destination'. Предположительно, обозначение предназначено для имитации символов '*' Ruby. –

ответ

1

Под знаменем this есть объект класса r.

Когда вы смотрите на минифицированный код, большинство имен переменных, функций и классов заменяются именами 1 и 2 символа, поэтому они не очень значимы.

+0

Спасибо за ваш ответ, любые мысли в аргументе '* sources'? – Bob

+0

Нет, я не уверен в этом. В то время как функции JS могут принимать аргументы переменной длины, это не отмечается в сигнатуре функции. – Barmar

Смежные вопросы