我有两种类型的数组值比较问题,这是

  tagNames = [];

            tagNames.push('61');
            cmt_wrds = '‏‏61'.replace(/[`~!@#$%^&*()_|+\-=?;:'",،؛«».<>\{\}\[\]\\\/]/gi, ' ').match(/\S+/g);


            if ( tagNames[0] == cmt_wrds[0] ) { // issue is here
                console.log('yes'); // --> nothing
            };

最佳答案

如果记录变量,您会发现它们有些不同。它把

'\u200f'


Right-To-Left Mark的符号。



var tagNames = [];

 tagNames.push('61');
 cmt_wrds = '‏‏61'.replace(/[`~!@#$%^&*()_|+\-=?;\u200f:'",،؛«».<>\{\}\[\]\\\/]/gi, ' ').match(/\S+/g);

console.log(tagNames);
console.log(cmt_wrds);

console.log(tagNames[0] === cmt_wrds[0]); // returns false, because they are different

10-06 15:08