Оператор === называется оператором строгого сравнения, он отличается от оператора ==.
Давайте возьмем 2 vars a и b.
Для «a = = b "для оценки истины a и b должны быть одинаковыми.
В случае« a === b »a и b должны быть одного и того же значения, а также одного и того же типа для него для оценки истины.
Возьмем следующий пример
var a = 1;
var b = "1";
if (a == b) //evaluates to true as a and b are both 1
{
alert("a == b");
}
if (a === b) //evaluates to false as a is not the same type as b
{
alert("a === b");
}
. использование оператора == может оцениваться как истинное в ситуациях, когда вы не хотите, чтобы использование этого оператора === было безопаснее.
В сценарии использования 90% не имеет значения, какой из них вы используете, но удобно знать разницу, когда вы получаете какое-то неожиданное поведение в один прекрасный день.
carrier
- это объект в ваших данных JSON, и поэтому вы не можете распечатать его напрямую. Если вы хотите напечатать его в виде строки, сделайте это.
<Text>{JSON.stringify(this.state.request.carrier)}</Text>
Если вы хотите, чтобы он выглядел аккуратно, вы можете отформатировать его следующим образом.
<Text>{JSON.stringify(this.state.request.carrier, 0, 4)}</Text>