一些比较Cool的js库

https://github.com/node-modules/hessian.js

https://github.com/stagas/maptail

Parsing URLs with the DOM!

// This function creates a new anchor element and uses location
// properties (inherent) to get the desired URL data. Some String
// operations are used (to normalize results across browsers).
 
function parseURL(url) {
    var a =  document.createElement(‘a‘);
    a.href = url;
    return {
        source: url,
        protocol: a.protocol.replace(‘:‘,‘‘),
        host: a.hostname,
        port: a.port,
        query: a.search,
        params: (function(){
            var ret = {},
                seg = a.search.replace(/^\?/,‘‘).split(‘&‘),
                len = seg.length, i = 0, s;
            for (;i<len;i++) {
                if (!seg[i]) { continue; }
                s = seg[i].split(‘=‘);
                ret[s[0]] = s[1];
            }
            return ret;
        })(),
        file: (a.pathname.match(/\/([^\/?#]+)$/i) || [,‘‘])[1],
        hash: a.hash.replace(‘#‘,‘‘),
        path: a.pathname.replace(/^([^\/])/,‘/$1‘),
        relative: (a.href.match(/tps?:\/\/[^\/]+(.+)/) || [,‘‘])[1],
        segments: a.pathname.replace(/^\//,‘‘).split(‘/‘)
    };
}

Usage

var myURL = parseURL(‘http://abc.com:8080/dir/index.html?id=255&m=hello#top‘);
 
myURL.file;     // = ‘index.html‘
myURL.hash;     // = ‘top‘
myURL.host;     // = ‘abc.com‘
myURL.query;    // = ‘?id=255&m=hello‘
myURL.params;   // = Object = { id: 255, m: hello }
myURL.path;     // = ‘/dir/index.html‘
myURL.segments; // = Array = [‘dir‘, ‘index.html‘]
myURL.port;     // = ‘8080‘
myURL.protocol; // = ‘http‘
myURL.source;   // = ‘http://abc.com:8080/dir/index.html?id=255&m=hello#top‘
时间: 2024-11-10 12:02:45

一些比较Cool的js库的相关文章

JQuery之JQuery的版本 JQuery入门 属性获取 JQuery就绪函数 JS文档就绪函数和JQuery文档就绪函数的区别 JS对象和JQuery对象的区别 关于$的使用 多个JS库的冲突解决方案

JQuery的版本 JQuery入门 属性获取 JQuery就绪函数 JS文档就绪函数和JQuery文档就绪函数的区别 JS对象和JQuery对象的区别 关于$的使用 多个JS库的冲突解决方案 JQuery的版本 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>jQuery的版本</title> <

近期写js库中遇到的一个判别的问题

最近在写一个自己的js库,正写到数组包,在里面定义了一个排序,只对纯数字数据进行排序的方法,但是在测试的时候发现一个很诡异的问题,那就是传入一个对象的时候,它没有返回erroemsg而是返回了对象,上代码: 1 array.sort=function(a){//only for num 2 try{ 3 4 if(!a.some(function(x){return(typeof("string"))})){ 5 var max=a.length-1; 6 7 for(var j=0;

Numeral.js 是一个用于格式化和数字四则运算的js 库

1.Numeral.js 是一个用于格式化和数字四则运算的js 库. 2.支持多种语言,包含中文在内的17种语言. 在浏览器中引用js文件: <script src="numeral.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/numeral.js/1.4.5/numeral.min.js"></script> 在nodejs开发引用开

专注于幻灯片/轮换图制作的JS库

myFocus简介 myFocus是一个专注于幻灯片/轮换图制作的JS库,它小巧而且是完全独立的JS库,用它可以轻松的制作出网上绝大部分常见的幻灯片(甚至包括flash幻灯片),而且制作出的幻灯片体积也非常的小(1KB左右),功能也十分的完备,因为是轻量级,其运行效率也比常见的幻灯片要高. 最重要的一点是,用myFocus制作出的幻灯片使用十分的简单方便,而且每个幻灯片的接口/结构都是通用的,这样,只用1~2秒时间就给网站换不同风格的幻灯片成为了可能. myFocus的设计理念就是简单易用,无论

【微收藏】FourShadows.js – 时间感知的算法驱动的图标阴影JS库

废话一箩筐,筐筐有心得 不小心养成了一个刷微博的习惯,主要还是关注一些前端人士,学习一些前端方面的知识,看到大家都有一些刷微博的小习惯.有的是转发一下,转发内容来一个标记(MARK).也有评论中标记为Mark的,这种完全不知道是干什么?不过有一个比较好的@我的印象笔记 不过,我不怎么喜欢使用这些小工具,因为怎么的我都不喜欢详细看,实际上这不是一个好习惯,我最常用的还是微博的收藏功能,最后找个时间再细看一下这些内容,今天就分享一篇收藏的内容.(吐槽一下:微博的某设备官方客户端真心不好用,主要是针对

程序员必备-创建js库

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"> </span><span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">牛腩Javascript中讲解的Jav

Markdown JS库

Markdown作为一门书写语言,比HTML简单很多.GitHub使用它做项目显示,StackOverflow也使用的是Markdown编辑器,还可以做博客.Markdown能通过一些方法转换为HTML,进而增加样式.可以通过编译生成,也可以在WEB上通过JS来做显示.本文涉及三个开源的JS库来编辑.显示Markdown. Markdown-js 项目地址:https://github.com/evilstreak/markdown-js 使用方法: <!DOCTYPE html> <h

impress.js 一个创建在线幻灯的js库

真的好奇怪,我居然会写前端技术的博客.没有办法的,最近实习,看的大多是前端.所以今天就用这个来练练手了. Impress.js 是一个非常棒的用来创建在线演示的Javascript库.它基于CSS3转 换和过渡.工作于现代浏览器(Google Chrome.Safari.Firefox 10 或 IE10).并受prezi.com的理念启发的演示工具.如果你已经厌烦了使用PowerPoint制作PPT,那么impress.js是一个非常 好的选择,用它做的PPT更加直观,效果也非常不错.在线De

移动端的内容滑块js库 swipe.js

swipe.js 是一个轻量级的移动端内容滑块,类似于pc端的slide.js,用于实现轮播广告或其他内容滑动模块 ,支持移动端屏幕滑动手势操作.此库不依赖于任何其他的js库,可独立使用 使用swipe.js时只需将下载好的文件引用到页面,然后在页面中写好对应的结构 <div id="slider" class="swipe"> <div class="swipe-wrap"> <div></div>

当新手使用JS库遇到问题怎么办

见标题,知其意.在做网站时候,其实我们会用很多JS库,网络上流行的和公司自己封装的,这些东西都很好用,但是或多或少的有些bug或者有一些缺陷,即使真的很完善,但也可能达不到自己特定的一些需求.所以遇到问题,是很正常的.但是为什么要说是新手遇到问题呢?这就是因为,有些问题,工作几年的攻城狮,轻而易举的就解决了,所以对于他们这些根本不是问题,或者对于他们这些就是私人定制而已. 其实我也是这样走过来的,如果叫我自己完全封装一个非常强悍的JS库,我肯定是没有办法做的,不是因为技术,而是经验不够,因为考虑