2

У меня есть эта машинопись функция:Переменная, показывающая, что оба имеют значение и как неопределенные в отладчике Chrome?

retrieve =() => { 
     var url = "/api/Exam/Retrieve/" + 
      this.configService.admin.examStatusId + "/" + 
      this.configService.admin.examTypeId + "/" + 
      this.userService.data.subjectId; 
     this.home.retrieve(url) 
    } 

Когда я нарушу на этой линии this.home.retrieve(url) и парю над examStatusId и examTypeId и subjectId я вижу значение 1,1 и 1.

Когда я парить над URL я см "/api/Exam/Retrieve/undefined/undefined/1"

Вот моя консоль выход:

console.log(this.configService.admin.examStatusId) 
1 
undefined 
console.log(url) 
/api/Exam/Retrieve/undefined/undefined/1 
undefined 

кто-нибудь объяснить почему во второй строке я вижу «1», а затем ниже «неопределенного» при выполнении console.log и почему URL-адрес не определен?

Проблема решено:

Моя Машинопись не компилируется Javascript правильно. Я отлаживал машинописный текст, но за ним был старый javascript!

+1

Я не знаю, на каком языке находится первый образец кода, но это не JavaScript. – cdhowie

+2

Это сокращенная функция ES6: http://ariya.ofilabs.com/2013/02/es6-and-arrow-function.html –

+0

Жаль, что я не был чист. Это машинопись. – 2014-08-28 05:53:20

ответ

1

Вторая строка - это возвращаемое значение функции console.log, напечатанное консолью для вашего удобства (и undefined, потому что не возвращается значение). Первая строка - это фактический вывод console.log.

+0

Спасибо. У вас есть идеи, почему URL может показывать неопределенные значения? – 2014-08-28 05:54:08

+0

Хорошо, что проблема решена. После того, как я внесла некоторые изменения, мой машинописный текст не был скомпилирован в Javascript. Спасибо за ответ о возвращаемом значении. – 2014-08-28 05:57:11