Uncaught TypeError: объект 5229d8fff4ae7a3803000023 не имеет метода toFixed

Вот мой фрагмент кода:

    json.iddd = ~~(json.id);
    console.log(typeof(json.iddd)); //shows number

    new ResponseTabView(json.iddd); // backbone view

внутри представления, которое я вызываю:

this.grid = new Backgrid.Grid({body : this.body, collection :this.collection, columns: this.columns});

Я получаю следующую ошибку:

Uncaught TypeError: Object 5229d8fff4ae7a3803000023 has no method 'toFixed'

Как избавиться от этого?


person codeofnode    schedule 15.09.2013    source источник
comment
Вы можете напечатать json.iddd здесь?   -  person Deepak Ingole    schedule 15.09.2013
comment
json.iddd приводит к 0. помогите мне с этим. Я хочу преобразовать json.id, который находится в строке, в числовой тип. а также не хочу, чтобы значение json.id менялось.   -  person codeofnode    schedule 15.09.2013


Ответы (2)


Как сказал @Abhilash, вы используете toFixed() для объекта типа string, что обязательно приведет к ошибке Object xyz has no method toFixed.

toFixed - это метод number Object, а не строка.

Вот вам справочная таблица

Методы числовых объектов

toExponential(x)    Converts a number into an exponential notation
toFixed(x)          Formats a number with x numbers of digits after the decimal point
toPrecision(x)      Formats a number to x length
toString()          Converts a Number object to a string
valueOf()           Returns the primitive value of a Number object

Итак, вам нужно разобрать строку на целое число, используя parstInt() или parseFloat()

parseInt(json.iddd).toFixed();   Or
parseFloat(json.iddd).toFixed();
person Deepak Ingole    schedule 15.09.2013

В параметрах, передаваемых в Backgrid.Grid, один параметр должен иметь тип Number. Но параметр, который вы передаете, имеет тип «String».

String объект не имеет toFixed() для использования. Отсюда ошибка.

Пожалуйста, console.log укажите typoof каждый параметр, а также прочитайте документацию Backgrid, чтобы узнать, какой параметр должен быть Number типа.

Ваше здоровье!

person Abilash    schedule 15.09.2013
comment
так как мне преобразовать строку в число в javascript. У меня есть json.id в строку и я хочу преобразовать в число. - person codeofnode; 15.09.2013
comment
Обратитесь к этому вопросу stackoverflow.com/questions/5330420/ - person Abilash; 15.09.2013