发表于: 2016-09-15 00:46:28

1 1985


今天完成的事:

1.在远近的帮助下搞定了任务5的跨域问题

2.某chrome扩展的第二个功能


明天计划的事:

1.估计只能看看犀牛书


收获:

1.match()和replace()字符串匹配/替换,可配合正则表达式使用。

(match的返回值好像是个对象,好奇怪,看console的输出结果里面一堆属性,index、input什么的)

(还是用replace好,可以配合^当match用。感觉上match适合当判断条件)


2.submit()触发提交事件,或者规定提交时运行的函数,对象为表单元素

$("form").submit(function(e){

  alert("Submitted");

});


3.undefined is not a function

  cannot call property 'xxx' of undefined

(看到某批判JS的文章说是极其常见的JS错误信息,我也算见过几次了,留意一下)


4.&是'&'符号


5.正则表达式


6.贪婪与惰性

(意思倒是好懂,具体怎么用正则量词还没懂)



遇到的问题:

1.之前的跨域问题

(1)AJAX的url要写成nginx设置的location名打头,比如/a/,于是实际写成/a/students

(2)linux系统的路径用"/"而windows是"\",在nginx.conf里改写root的路径时要注意一下这个问题

(3发送跨域请求的页面一定要放在nginx的root目录下


2.如何从一个字符串里提取数字字符

str.replace(/[^0-9]ig,"");  //去掉所有非数字


3.'/land.php?x=106&y=-514'从这个字符串里提取两个数字,赋给变量x和y。

(1)value=str.replace(/[^0-9\&\-]/ig,"") //简化成'106&-514',其中特殊符号前面都要加个\

(2)接着。。不知道有没很方便的正则做法,我这里最终采用了循环而且看起来比较繁琐的正则(比起把字符串当一个数组来处理可读性差多了)

    while(value.match(/[0-9\-](?=\&)/ig)!=null){    //当&前面有数字时执行循环

        value=value.replace(/[0-9\-](?=\&)/ig,""); //去掉&前的单个数字

    }

    value=value.replace("&",""); //去掉&,得到y值

(3)x的值通过在'106&-514'里replace掉前面获取的'&-514'得到


4.正则的^n和n$使用场景选择出错。

(我开始的理解是,假如有一个'aaabccc'的字符,^b能获取bccc,b$能获取aaab,可是获取失败了)


5.[0-9](?=n)和[0-9](?!n)只能匹配到n前后的单个数字而不是全部数字


6.掌握正则量词的用法真的有点困难




返回列表 返回列表
评论

    分享到