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

选出最长的单词

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

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