admin管理员组

文章数量:1025493

This is my javascript object and code

buildingJson: {
    name: "build",
    height: 40
}

var val = parseFloat(buildingJson.height).toFixed(2);
buildingJson.height = val;
console.log(typeof buildingJson.height);

This is always logging out a string even though the value is 40.0.

How to set the height to a floating point number in the buildingJson object.

This is my javascript object and code

buildingJson: {
    name: "build",
    height: 40
}

var val = parseFloat(buildingJson.height).toFixed(2);
buildingJson.height = val;
console.log(typeof buildingJson.height);

This is always logging out a string even though the value is 40.0.

How to set the height to a floating point number in the buildingJson object.

Share Improve this question edited Apr 16, 2015 at 22:47 earl3s 2,3731 gold badge23 silver badges25 bronze badges asked Apr 16, 2015 at 22:39 budhavarapu rangabudhavarapu ranga 4833 gold badges7 silver badges15 bronze badges 4
  • 2 Your current code has a syntax error at buildingJson, even if it would be correct then buildingJson is a JavaScript Object, and not JSON. JSON is a textual representation. And it bees a string because of toFixed MDN: Number.prototype.toFixed(): [...]Returns: A string representation of numObj that does not use exponential notation and has exactly digits digits after the decimal place.[...] – t.niese Commented Apr 16, 2015 at 22:42
  • Do you know what toFixed() returns? developer.mozilla/en-US/docs/Web/JavaScript/Reference/… – epascarello Commented Apr 16, 2015 at 22:45
  • note: this is not json format valid ..... should you edit and plete your question? – Jose Ricardo Bustos M. Commented Apr 16, 2015 at 22:48
  • 1 If there is an answer that worked you should accept it. – earl3s Commented Apr 17, 2015 at 21:07
Add a ment  | 

2 Answers 2

Reset to default 2

That's because toFixed returns a String (that's how the decimals at the end of the number are preserved. To fixed is designed to be used for display purposes.

Removing that will do what you want.

parseFloat(buildingJson.height)

toFixed() returns a string in the given precision. If you want a float, don't use toFixed(). See the documentation here: https://developer.mozilla/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toFixed

This is my javascript object and code

buildingJson: {
    name: "build",
    height: 40
}

var val = parseFloat(buildingJson.height).toFixed(2);
buildingJson.height = val;
console.log(typeof buildingJson.height);

This is always logging out a string even though the value is 40.0.

How to set the height to a floating point number in the buildingJson object.

This is my javascript object and code

buildingJson: {
    name: "build",
    height: 40
}

var val = parseFloat(buildingJson.height).toFixed(2);
buildingJson.height = val;
console.log(typeof buildingJson.height);

This is always logging out a string even though the value is 40.0.

How to set the height to a floating point number in the buildingJson object.

Share Improve this question edited Apr 16, 2015 at 22:47 earl3s 2,3731 gold badge23 silver badges25 bronze badges asked Apr 16, 2015 at 22:39 budhavarapu rangabudhavarapu ranga 4833 gold badges7 silver badges15 bronze badges 4
  • 2 Your current code has a syntax error at buildingJson, even if it would be correct then buildingJson is a JavaScript Object, and not JSON. JSON is a textual representation. And it bees a string because of toFixed MDN: Number.prototype.toFixed(): [...]Returns: A string representation of numObj that does not use exponential notation and has exactly digits digits after the decimal place.[...] – t.niese Commented Apr 16, 2015 at 22:42
  • Do you know what toFixed() returns? developer.mozilla/en-US/docs/Web/JavaScript/Reference/… – epascarello Commented Apr 16, 2015 at 22:45
  • note: this is not json format valid ..... should you edit and plete your question? – Jose Ricardo Bustos M. Commented Apr 16, 2015 at 22:48
  • 1 If there is an answer that worked you should accept it. – earl3s Commented Apr 17, 2015 at 21:07
Add a ment  | 

2 Answers 2

Reset to default 2

That's because toFixed returns a String (that's how the decimals at the end of the number are preserved. To fixed is designed to be used for display purposes.

Removing that will do what you want.

parseFloat(buildingJson.height)

toFixed() returns a string in the given precision. If you want a float, don't use toFixed(). See the documentation here: https://developer.mozilla/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toFixed

本文标签: How to convert json value to float javascriptStack Overflow