如何在javascript中分割价值?

时间:2019-03-18 16:01:01

标签: javascript arrays object javascript-objects

这里我有一个月对象在这个月对象中,值1,2,3,4,5内,所选经验值是04(请参见控制台),因此想查找值,因此我将两者进行比较,但由于{{ 1}}如何匹配它们?

4 and 04 not matched

6 个答案:

答案 0 :(得分:3)

如何将其转换为int

console.log(months.find(month => month.value === parseInt(selectedExperience.from.split('/')[0])));

答案 1 :(得分:2)

您可以使用parseInt

month.value === parseInt(selectedExperience.from.split('/')[0]) 

console.log(parseInt('04') === 4)

答案 2 :(得分:2)

使用Number,以便比较数字而不是字符串:

Number(month.value) === Number(selectedExperience.from.split('/')[0])

答案 3 :(得分:2)

尝试使用“ +”运算符将字符串转换为数字:

var test = "04";
console.log(test); //04
console.log(+test); //4

console.log(months.find(month => month.value === +selectedExperience.from.split('/')[0]));

答案 4 :(得分:1)

假设04是一个字符串,在比较之前执行parseInt或将其转换为数字,否则使用一元运算符

console.log(selectedExperience.from.split('/')[0])) // 04
let exp = parseInt(selectedExperience.from.split('/')[0],10)

console.log(months)  // [ { value : 1, name: "one"}
                     //   { value: 2, name: "two" }
                     //   { value: 4, name: "four" }] 

console.log(months.find(month => month.value ===exp  ))

答案 5 :(得分:1)

.split()将返回一个字符串数组。因此,要与整数进行比较,您需要使用parseInt进行解析。

var test = "04/12";
var months = [{
    value: 1,
    name: "one"
  },
  {
    value: 2,
    name: "two"
  },
  {
    value: 4,
    name: "four"
  }
];

console.log(test.split('/')[0]);
console.log(months);

console.log(months.find(month => month.value === parseInt(test.split('/')[0])));