V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
Wonderwall
V2EX  ›  JavaScript

选出最长的单词

  •  
  •   Wonderwall · 2015-07-17 09:08:24 +08:00 · 3182 次点击
    这是一个创建于 3200 天前的主题,其中的信息可能已经有所发展或是发生改变。

    从string中选出最长的单词。

    比如对“fun&!! time"执行,结果应该是“time".

    请问为什么我写的这个不行呢?

    function LongestWord(sen) {
    var newSen = sen.replace(/[^\w\s]/, "");
    var array = newSen.split(" ");
    var longest = array[0].length;
    var word = array[0];
    for (i = 1; i < array.length; i++){
    if (array[i].length > longest){
    var longest = array[i].length;
    var word = array[i];
    }
    }
    return word;

    }

    给的提示是 SyntaxError: Invalid character '\u8220'

    谢谢!

    5 条回复    2015-07-17 11:49:28 +08:00
    bobai
        1
    bobai  
       2015-07-17 09:41:52 +08:00   ❤️ 1
    你这replace不对吧?就拿你写的例子为例,&!!不是/[^\w\s]/里面任何一个啊,你那array里面拿到的是['fun&!!',‘time’]啊,自然返回的不是time啊。你这是用的js吗?还是其他什么语言
    calebx
        2
    calebx  
       2015-07-17 09:44:44 +08:00   ❤️ 1
    你的双引号 是全角的?
    请确保你的输入正确,SyntaxError是有错误行号的
    stupid question
    br00k
        3
    br00k  
       2015-07-17 10:08:48 +08:00   ❤️ 1
    Wonderwall
        4
    Wonderwall  
    OP
       2015-07-17 10:25:28 +08:00
    @bobai @calebx @br00k 谢谢三位!
    lujjjh
        5
    lujjjh  
       2015-07-17 11:49:28 +08:00
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2710 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 12:11 · PVG 20:11 · LAX 05:11 · JFK 08:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.