分享Javascript实用方法二

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。

承接上一篇,

Object

keys

object的keys方法能够获取一个给定对象的所有键(key/属性名)并以数组的形式返回。这个方法可以用于键的筛选、匹配等。

var basket = {
strawberry: 12,
banana: 20,
apple: 30,
juice: 20
};
console.log(Object.keys(basket));
//[ 'strawberry', 'banana', 'apple', 'juice' ]

create

create方法用于创建一个新的对象,可选参数(proto, [ propertiesObject ]),第一个为原型,比如Array.prototype之类的,第二个为需要给新建对象的一些新属性之类的,这个参数对象的属性名将是新建对象的属性,值则是属性描述符(value、writable、configurable等)。

var o = Object.create({}, {p: {value: 42}});
var O = Object.create({}, {p: {value: 66, writable: true, enumerable: true}});
console.log(o.p); //42
console.log(O.p); //66
o.p = 20;
O.p = 80;
console.log(o.p); //42
console.log(O.p); //80

属性描述符中writable默认为false,因此o.p即便在后来重新赋值也是不能改变其值的,而O.p则能够在后来改变值,此外,create方法proto必须传入相应参数,否则会报错TypeError,当然以上代码在严格模式下也会报错,因为o.p被重写- -

assign

assign方法,es6的新特性,支持传参(target, …sources),用于将任意多个源对象的键值对添加的目标对象,类似于lodash的assign和underscore的extendOwn方法。

var boy = {handsome: true, rich: true}, girl = {cute: true, hair: 'long'};
var couples = Object.assign({}, boy, girl);
console.log(couples); //{ handsome: true, rich: true, cute: true, hair: 'long' }

assign方法常用于框架层面的数据处理,比如你定义了一个client用于发送HTTP请求,使用的时候获取接受到的参数之外自己可能得加上什么默认的属性。

Number

isNaN

Number的isNaN方法用来判断传入值是否是NaN的值,与全局的isNaN方法不同的是它不会强制将传入参数转化为数字类型,只有在参数是真正的数字类型,且值为 NaN 的时候才会返回 true。不过就自己而言全局的isNaN用的多一点,就用来判断字符串是不是只包含数字,

console.log(isNaN('123f')); //true
console.log(isNaN('123')); //true

此外,isFinite(value)方法用于判断传入参数是否是有穷数,isInteger(value)方法用于判断传入参数是否是整数。

toFixed

toFixed方法用来将数字转化为特定的字符串,支持传入参数(digits),0 < digits <= 20,在转换的时候会自动进行四舍五入以及0补充。

var cool = 666.666;
console.log(cool.toFixed(1)); //666.7
console.log(cool.toFixed(6)); //666.666000

这段时间发生了很多事情,从待了116天的杭州来到北京,开始一段新的工作与生活。不舍、惆怅、激动、兴奋等情绪交织缠绵…七匹狼,认识了其余六狼,很珍惜这段大家一起努力一起嗨皮的日子,尤记得夜爬宝石山,俯瞰西湖,English poor,哈哈哈…

ps:javascript split() 定义和用法

split() 方法用于把一个字符串分割成字符串数组。

语法

stringObject.split(separator,howmany)
参数 描述
separator 必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。
howmany 可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
(0)

相关推荐

  • JS+CSS实现实用的单击输入框弹出选择框的方法

    本文实例讲述了JS+CSS实现实用的单击输入框弹出选择框的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999

  • 比较简单实用的使用正则三种版本的js去空格处理方法

    分别去字符串前后,左边,右边空格  复制代码 代码如下: String.prototype.trim = function(){ return this.replace(/^\s+|\s+$/g,"")}   String.prototype.ltrim = function(){ return this.replace(/^\s+/g,"")}   String.prototype.rtrim = function(){ return this.replace(/

  • js实现跨域的4种实用方法原理分析

    什么是js跨域呐? js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议.域名.端口有任何一个不同,都被当作是不同的域. 要解决跨域的问题,我们可以使用以下几种方法: 一.通过jsonp跨域 在js中,我们直接用XMLHttpRequest请求不同域上的数据时,是不可以的.但是,在页面上引入不同域上的js脚本文件却是可以的,jsonp正是利用这个特性来实现的. 比如,有个a.html页面,

  • JS判断数组中是否有重复值得三种实用方法

    方法一: 复制代码 代码如下: var ary = new Array("111","22","33","111"); var s = ary.join(",")+","; for(var i=0;i<ary.length;i++) { if(s.replace(ary[i]+",","").indexOf(ary[i]+",&qu

  • js 表单验证方法(实用)

    //下面验证的是长度 function checkTextLen(textId){ var len = 0; var checkField=document.getElementById(textId); var inputstring = checkField.value; var string_length = inputstring.length; if (string_length == 0) { return 0; } for (var i=0;i<string_length;i++)

  • javascript写的简单的计算器,内容很多,方法实用,推荐

    最近用javascript写了一个简单的计算器,自己测试感觉还好,先给大家观赏下界面: 界面就是这样了,但是功能如何呢? 现在只是个简单的标准计算器,能进行加减乘除连续运算,以及求余运算.如果发生被除数为零的错误,下面会给出提示,就像这样: 自己不知道写的怎么样,但是对于新手来说,这肯定是一份大餐,里面可以接触到的东西不少,可以拿来学习.如果有高手看出里面的疏漏.错误等望不吝赐教,给予指点. 下面贴上代码,希望里面的注释足够多了. js部分: 复制代码 代码如下: var num=0,resul

  • js+数组实现网页上显示时间/星期几的实用方法

    复制代码 代码如下: <html> <head> <script type="text/javascript"> function startTime() { var today=new Date() var h=today.getHours() var m=today.getMinutes() var s=today.getSeconds() // add a zero in front of numbers<10 m=checkTime(m

  • js去除空格的12种实用方法

    实现1 String.prototype.trim = function() { return this.replace(/^\s\s*/, '').replace(/\s\s*$/, ''); } 看起来不怎么样, 动用了两次正则替换,实际速度非常惊人,主要得益于浏览器的内部优化.一个著名的例子字符串拼接,直接相加比用Array做成的StringBuffer 还快.base2类库使用这种实现. 实现2 String.prototype.trim = function() { return th

  • 分享Javascript实用方法二

    JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能. 承接上一篇, Object keys object的keys方法能够获取一个给定对象的所有键(key/属性名)并以数组的形式返回.这个方法可以用于键的筛选.匹配等. var basket = { strawberry: 12,

  • Javascript实用方法之json合并的场景分析

    场景 2个json合并, jQuery 的“extend()”方法有两个原型:合并的方法,分别是浅合并和深度合并,其实浅合并只是json的第一层被合并,而深度合并是全部层数都被合并,分别如下写法: 1.浅合并,target被object1...合并,只有一层 $.extend( target [, object1 ] [, objectN ] ) 深度合并,target被object1...合并,包含一层二层三层... 要深度合并, [deep]需要为true, 后面覆盖前面,所以如要要保留后面

  • javascript实用方法总结

    引言: 本章没有深奥的讲解js一些底层原理,比如this指针.作用域.原型啦,涉及的都是一些有利于平时开发时简化代码,提高执行效率,或者说可以当做一种经验方法来使用,篇幅都不长,小步快跑的让你阅读完整篇文章,体验编程的快乐.  获取两个区间之内随机数 复制代码 代码如下: function getRandomNum(Min, Max){ // 获取两个区间之内随机数     // @逆火狂飙  提出有可能第一个参数大于第二个参数,所以增加一下判断更可靠     if (Min > Max)   

  • 分享javascript、jquery实用代码段

    本文实例为大家简单分享javascript.jquery实用demo,供大家参考,具体内容如下 javascript判断H5页面离开 function onbeforeunloadFn(){ console.log('离开页面'); //...code } function showOnbeforeunload(flags){ if(flags){ document.body.onbeforeunload = onbeforeunloadFn; }else{ document.body.onbe

  • JavaScript动态创建二维数组的方法示例

    本文实例讲述了JavaScript动态创建二维数组的方法.分享给大家供大家参考,具体如下: 学过C语言的我太耿直 一般这种情况下我会直接 var arr = new Array[10][10]; 但是不出意外的话这样是会报错的,因为在js中根本没有这样的语法 在这之前,让我们先来回顾一下js中是怎么样创建一维数组的: 使用数组直接量,这个是最简单的,在方括号内将数组元素用逗号隔开即可: var arr = [ ]; //空数组 var s = [1,2,3,4]; //4个元素的数组 var n

  • 分享JavaScript 类型判断的几种方法

    目录 一.JavaScript 基本类型 1.原始数据类型 2.引用数据类型 3.两种数据类型的存储方式 二.Javascript 数据类型判断的几种方法 1.typeof 2.instanceof 3.构造函数(constructor) 4.Object.prototype.toString.call() 三.写在最后 一.JavaScript 基本类型 首先介绍一下JavaScript中的八大基本类型 1.原始数据类型 除对象类型(object)以外的其它任何类型定义的不可变的值(值本身无法

  • javascript实现类似百度分享功能的方法

    本文实例讲述了javascript实现类似百度分享功能的方法.分享给大家供大家参考.具体如下: 像腾讯,开心社区都提供这种分享接口的,做百度分享功能很简单的 一般网站要接入分享功能,大部分都用百度分享和addthis的代码,可是自己定制性太差,该分享功能样式都可以自己修改,简洁没过多js代码,大大提高网页加载速度. 运行效果如下图所示: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "htt

  • Java-文件File简单实用方法(分享)

    1.1java.io.File File用于表示文件系统中的一个文件或目录 通过File可以: 1:访问该文件或目录的属性信息(名字,大小,修改时间等) file.getName();获取文件名 file.length();获取文件长度 file.lastModified();获取文件最后一次修改时间 file.canWrite();是否可写 file.canRead();是否可读 file.isHidden();是否隐藏 2:操作文件或目录(创建,删除) 使用File创建一个新文件 File

  • Javascript数组方法reduce的妙用之处分享

    前言 Javascript数组方法中,相比map.filter.forEach等常用的迭代方法,reduce常常被我们所忽略,今天一起来探究一下reduce在我们实战开发当中,能有哪些妙用之处,下面从reduce语法开始介绍. 语法 array.reduce(function(accumulator, arrayElement, currentIndex, arr), initialValue) 若传入初始值,accumulator首次迭代就是初始值,否则就是数组的第一个元素:后续迭代中将是上一

  • 全面介绍javascript实用技巧及单竖杠

    JavaScript 本身可以算是一门简单的语言,但我们也不断用智慧和灵活的模式来改进它.昨天我们将这些模式应用到了 JavaScript 框架中,今天这些框架又驱动了我们的 Web 应用程序.很多新手开发者被各种强大的 JavaScript 框架吸引进来,但他们却忽略了框架身后浩如星海的 JavaScript 实用技巧.本文将为你全面的介绍其中的知识点. 一.js整数的操作 使用|0和~~可以将浮点转成整型且效率方面要比同类的parseInt,Math.round 要快,在处理像素及动画位移等

随机推荐