`
全冠清
  • 浏览: 52484 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

javascript惯用法

阅读更多
数值
/**
 * 转换&取整
 */
-45.67890^0 //-45
-45.67890|0 //-45 
~~5645.1132 //5645
'-45.67890'^0 //-45
'-45.67890'|0 //-45 
~~'5645.1132' //5645
/**
 *金额处理
 */
Number.prototype.fixMoney=function(){  
    return this.toString().replace(/(\d{1,3})(?=(\d{3})+(?:$|\.))/g,"$1,")  
}  
var a=123456789  
alert(a.fixMoney()) 

数组
var a = [1,2,3];
var b = [4,5,6];
Array.prototype.push.apply(a, b);
eval(a); //[1,2,3,4,5,6]

/**
 *指定位置合并
 */ 
var a = [1,2,3,7,8,9];
var b = [4,5,6];
a.splice.apply(a, Array.concat(3, 0, b));

/**
 *最大值最小值
 */
Math.max.apply(Math, [1,2,3])  //3
Math.min.apply(Math, [1,2,3]) //1

浏览器事件
/**
 *派发(增加)事件
 */
function appendEvent(dom, event, fun){
            if (/msie/i.test(navigator.userAgent)) { //ie  
                dom.attachEvent("on" + event, fun)
            }
            else {
                dom.addEventListener(event, fun, false);
            }
        }
/**
 *取消默认事件
 */
e=e||window.event;
e.preventDefault?e.preventDefault():e.returnValue=false;

继承
var a=function(v1){  
            this.v1=v1  
            this.test=function(){  
                alert(this.v1)  
            }  
        }  
        var b=function(){  
        }  
        b.prototype=new a('12312')  
        var b1=new b('tttt')  
        b1.test()  
  
          function classA(t){  
          this.t=t  
          this.sayArg=function(){  
            alert(this.t)  
          }  
       }  
       function classB(tt){  
        this.extend=classA  
        this.extend(tt)  
        delete this.extend  
       }  
       var b2=new classB('test')  
       b2.sayArg()  
         
          function classC(cc){  
         this.c=cc  
         this.sayC=function(){  
            alert(this.c)  
         }  
       }  
       function classD(cc){  
//             classC.call(this,cc)  
             classC.apply(this,[cc])  
       }  
       var d =new classD('dddddd')  
       d.sayC()

其他
/**
 *随机数
 */
Math.random().toString(16).substring(2); //13位
Math.random().toString(36).substring(2); //11位

/**
 *赋值处理
 */
a= [b, b=a][0];//交换值
var a = b && 1; 
//相当于
if (b) {
  a = 1
}

var a = b || 1; //适合用法方法参数的默认值
//相当于
if (b) {
  a = b;
} else {
  a = 1;
}

new Array(50).join("a,")//相当于ruby,python中的"a,"*50
var date = +new Date; //转为日期的数值


//获取文件自身的位置
var path=document.scripts;   
path=path[path.length-1].src.substring(0,path[path.length-1].src.lastIndexOf("/")+1);   
if((path.indexOf('http')!=0&&path.indexOf('/')!=0)||path.indexOf('./')==0){  
            path=window.location.href.substring(0,window.location.href.lastIndexOf("/")+1)+path  
}  
分享到:
评论

相关推荐

    面向对象的Javascript之一(初识Javascript)

    因而,Javascript是一门面向过程的语言,同时也是一门面向对象的语言,进而可以模仿面向对象语言的编程模式和惯用法。我们用一个例子来说明:启动和停止动画。 如果你习惯于函数式的编程风格,代码会如下: 代码如下...

    avascript设计模式.pdf

    它能够模仿其他编程语言的模式和惯例,同时形成了自己独特的编程模式和惯用法。 #### 3. JavaScript的面向对象特性 JavaScript支持面向对象编程,提供了继承和封装等面向对象的特性。通过原型链(prototype)和函数...

    tour-of-[removed]js笔记本

    tour-of-javascript notebook of js 重点: javascript 的惯用法 javascript 的gist 常用框架的sample reference books: reference topics

    betta.js:Betta库JavaScript回购。用作git项目中的子模块

    6. **API设计**:Betta.js库的API设计遵循了JavaScript的惯用法,使得学习和使用起来更加直观和自然,降低了学习曲线。 7. **社区支持**:作为一个开源项目,Betta.js拥有活跃的开发者社区,提供文档、示例和问题...

    Kotlin教学

    - **惯用法**:Kotlin 强调编写简洁明了的代码,提供了一系列惯用法,如范围表达式、解构声明等,这些有助于提高代码的可读性和可维护性。 #### 编码规约 为了保持代码的一致性和可读性,Kotlin 提供了一套编码规范...

    atom-idiomatic-comments-css-snippets:原子的惯用CSS注释片段

    3. **惯用法(Idiomatic)**:在编程领域,惯用法是指在特定编程语言或社区中广泛接受的最佳实践,它有助于保持代码的一致性和可读性。 4. **Sublime Text**:Sublime Text是一款流行的文本编辑器,以其速度、简洁...

    Coffeescript中文手册

    20. **CoffeeScript惯用法**:包括`each`、`map`、`filter`、`indexOf`等常见的集合操作方法。 21. **Each**:`each`用于遍历数组或对象,相当于JavaScript的`forEach`。 22. **Map**:`map`函数用于创建新数组,...

    kotlin2018年最新中文文档

    Kotlin的惯用法指的是在Kotlin编程中的一些约定俗成的编程风格或技巧,比如使用扩展函数来增强已有的类库功能,利用Lambda表达式来实现回调机制等。 编码规约部分则提供了编写高质量、可维护代码的建议,如使用有...

    prototype.js开发笔记.pdf

    编写这些方法的明显的目的就是为了减少开发者的重复编码和惯用法。 1.3.1.使用$()方法 $()方法是在DOM中使用过于频繁的document.getElementById()方法的一个便利的简写。这个方法返回参数传入的id的那个元素。比起...

    jscodesniffer::no_entry:[DEPRECATED]工具,可确保您JavaScript代码不违反指定的编码标准(惯用风格宣言或JQuery核心风格指南)

    JSCodeSniffer是一个node.js应用程序,它根据提供的编码样式(如phpcs)检查JavaScript代码样式的一致性。 可以使用以下JSON符号定义自定义编码样式,也可以使用预定义的标准之一。 特征 该工具可以作为UMD使用...

    prototype.js手册及文档

    或许你还没有用过它, prototype.js 是一个由Sam Stephenson写的JavaScript包。这个构思奇妙编写良好的一段兼容标准的一段代码将承担创造胖客户端,...编写这些方法的明显的目的就是为了减少你大量的重复编码和惯用法。

    kotlin-docs

    - **惯用法**:介绍了一些常用的 Kotlin 编码习惯,帮助开发者更好地理解和使用 Kotlin。 - **编码规范**:提供了一套推荐的编码实践,确保代码的一致性和可维护性。 #### 八、基础知识 - **基本类型**:如整型、...

    elegant-patterns-js

    JavaScript作为一门动态、灵活的脚本语言,在实际开发中,良好的编程模式和惯用法对于项目的成功至关重要。下面我们将深入探讨几个常见的JavaScript设计模式,并结合实际例子进行讲解。 1. 单例模式: 单例模式确保...

    gallio:塞内卡的兄弟(概念证明)

    以`__`(双下划线)开头的变量名遵循这个原则,表示它们在项目中应被视为私有,这符合Python等语言的惯用法,但在JavaScript中,通常我们使用`_`(单下划线)或`_`前后的驼峰式命名来表示私有属性,而不是双下划线。...

    优美代码力作

    遵循【惯用法】是保持代码风格一致的重要手段。例如,注释符号后面应留空格,变量应先声明后使用,避免硬编码和重复代码,统一属性命名风格,合理利用局部变量,避免混合使用不同风格的属性命名,减少不必要的DOM...

    Kotlin 中文教學

    7. **编程惯用法**:推荐了一些编程实践中较优的代码编写方式,帮助开发者编写出更加清晰、高效、可维护的代码。 8. **与 Java 的互操作性**:Kotlin 设计之初就考虑了与 Java 的互操作性,因此在 Kotlin 中调用 ...

Global site tag (gtag.js) - Google Analytics