js判断两个字符串值是否相等,请教大神啊

jiafeng_lee 2013-09-18 03:04:12
用作于多选项的判断,比如正确答案为1;2;3 选择的项为231,表示此题正确
要判断选项和正确是相同的,小弟写了一小段代码
var aaa='1;2;3';
var bbb='231';
function nima(){
var aleng = aaa.length;
if(aleng != 1){
var sb = aaa.replace(";","");
if(sb.length == bbb.length){
for(i=0;i<sb.length;i++){
alert(sb[i]);
}
} else {
alert("不等");
}
} else {
alert(' 就一个');
}
}
...全文
470 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
乔不思 2013-10-10
  • 打赏
  • 举报
回复
引用 1 楼 fzfei2 的回复:

var aaa='1;2;3';
var bbb='231';
function nima(a,b){
  function sort(s){return s.match(/\d/g).sort()+'' } 
  return sort(a)==sort(b) 
}
alert(  nima(aaa,bbb)?'相等':'不等');
和撸主的 函数名 好霸气啊。。。哈哈
lori0801 2013-09-18
  • 打赏
  • 举报
回复
引用 2 楼 clark523 的回复:
[quote=引用 1 楼 fzfei2 的回复:]

var aaa='1;2;3';
var bbb='231';
function nima(a,b){
  function sort(s){return s.match(/\d/g).sort()+'' } 
  return sort(a)==sort(b) 
}
alert(  nima(aaa,bbb)?'相等':'不等');
正解。js的replace函数不支持批量替换。批量替换推荐使用正则。[/quote] 取出数字之后进行排序,在比较是否相等
fzfei2 2013-09-18
  • 打赏
  • 举报
回复
引用 5 楼 jiafeng_lee 的回复:
[quote=引用 1 楼 fzfei2 的回复:]

var aaa='1;2;3';
var bbb='231';
function nima(a,b){
  function sort(s){return s.match(/\d/g).sort()+'' } 
  return sort(a)==sort(b) 
}
alert(  nima(aaa,bbb)?'相等':'不等');
这样简单多了,我还打算先排序再比较[/quote] 这方法就是取出数字排序后比较的
jiafeng_lee 2013-09-18
  • 打赏
  • 举报
回复
引用 1 楼 fzfei2 的回复:

var aaa='1;2;3';
var bbb='231';
function nima(a,b){
  function sort(s){return s.match(/\d/g).sort()+'' } 
  return sort(a)==sort(b) 
}
alert(  nima(aaa,bbb)?'相等':'不等');
这样简单多了,我还打算先排序再比较
xilaianzxsc 2013-09-18
  • 打赏
  • 举报
回复
fzfei2老师的水平真高
conanhhy 2013-09-18
  • 打赏
  • 举报
回复
JS可以使用正则表达式来批量替换

var aaa='1;2;3';
    var bbb='231';
    function nima(){
        var aleng = aaa.length;
        if(aleng != 1){
            var sb = aaa.replace(/;/g,""); //这样写就会把所有的;都替换为空
            if(sb.length == bbb.length){
                for(i=0;i<sb.length;i++){
                    alert(sb[i]);
                }
            } else {
                alert("不等");
            }
        } else {
            alert(' 就一个');
        }
    }
clark523 2013-09-18
  • 打赏
  • 举报
回复
引用 1 楼 fzfei2 的回复:

var aaa='1;2;3';
var bbb='231';
function nima(a,b){
  function sort(s){return s.match(/\d/g).sort()+'' } 
  return sort(a)==sort(b) 
}
alert(  nima(aaa,bbb)?'相等':'不等');
正解。js的replace函数不支持批量替换。批量替换推荐使用正则。
fzfei2 2013-09-18
  • 打赏
  • 举报
回复

var aaa='1;2;3';
var bbb='231';
function nima(a,b){
  function sort(s){return s.match(/\d/g).sort()+'' } 
  return sort(a)==sort(b) 
}
alert(  nima(aaa,bbb)?'相等':'不等');

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧