分享Javascript实用方法二


Posted in Javascript onDecember 13, 2015

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 可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
Javascript 相关文章推荐
网站上面有这种切换效果
Jun 26 Javascript
解决extjs在firefox中关闭窗口再打开后iframe中js函数访问不到的问题
Nov 06 Javascript
Jquery图片延迟加载插件jquery.lazyload.js的使用方法
May 21 Javascript
Javascript判断文件是否存在(客户端/服务器端)
Sep 16 Javascript
jQuery中live()方法用法实例
Jan 19 Javascript
javascript实现五星评价代码(源码下载)
Aug 11 Javascript
javascript学习总结之js使用技巧
Sep 02 Javascript
微信小程序 loading(加载中提示框)实例
Oct 28 Javascript
JavaScript面试出现频繁的一些易错点整理
Mar 29 Javascript
微信小程序通过保存图片分享到朋友圈功能
May 24 Javascript
JS闭包原理与应用经典示例
Dec 20 Javascript
基于vue-cli3创建libs库的实现方法
Dec 04 Javascript
JavaScript判断按钮被点击的方法
Dec 13 #Javascript
jquery插件uploadify实现带进度条的文件批量上传
Dec 13 #Javascript
JavaScript代码判断点击第几个按钮
Dec 13 #Javascript
JavaScript模块化开发之SeaJS
Dec 13 #Javascript
node.js require() 源码解读
Dec 13 #Javascript
JavaScript 模块的循环加载实现方法
Dec 13 #Javascript
javascript日期验证之输入日期大于等于当前日期
Dec 13 #Javascript
You might like
PHP 设计模式之观察者模式介绍
2012/02/22 PHP
PHP文章采集URL补全函数(FormatUrl)
2012/08/02 PHP
用PHP即时捕捉PHP中的错误并发送email通知的实现代码
2013/01/19 PHP
Zend studio文件注释模板设置方法
2013/09/29 PHP
PHP调用JAVA的WebService简单实例
2014/03/11 PHP
4种Windows系统下Laravel框架的开发环境安装及部署方法详解
2020/04/06 PHP
js传值 判断
2006/10/26 Javascript
dojo 之基础篇(二)之从服务器读取数据
2007/03/24 Javascript
javascript for循环设法提高性能
2010/02/24 Javascript
基于jQuery制作迷你背词汇工具
2010/07/27 Javascript
PHPMyAdmin导入时提示文件大小超出PHP限制的解决方法
2015/03/30 Javascript
js+HTML5实现视频截图的方法
2015/06/16 Javascript
js中遍历Map对象的简单实例
2016/08/08 Javascript
基于MVC5和Bootstrap的jQuery TreeView树形控件(二)之数据支持json字符串、list集合
2016/08/11 Javascript
jQuery实现的自适应焦点图效果完整实例
2016/08/24 Javascript
ajax图片上传,图片异步上传,更新实例
2016/12/30 Javascript
jQuery动态产生select option下拉列表
2017/03/15 Javascript
使用JavaScript实现点击循环切换图片效果
2017/09/03 Javascript
JavaScript登录验证基础教程
2017/11/01 Javascript
elementUI 设置input的只读或禁用的方法
2018/10/30 Javascript
vue a标签点击实现赋值方式
2020/09/07 Javascript
在Python中操作字典之update()方法的使用
2015/05/22 Python
Python判断值是否在list或set中的性能对比分析
2016/04/16 Python
Python首次安装后运行报错(0xc000007b)的解决方法
2016/10/18 Python
Python WEB应用部署的实现方法
2019/01/02 Python
如何利用pygame实现简单的五子棋游戏
2019/12/29 Python
matplotlib制作雷达图报错ValueError的实现
2021/01/05 Python
利用HTML5实现使用按钮控制背景音乐开关
2015/09/21 HTML / CSS
Oracle的内存结构(Memory structures)
2015/06/10 面试题
优秀毕业生自我鉴定
2014/02/11 职场文书
出生医学证明书
2014/09/15 职场文书
银行转正自我鉴定
2014/09/29 职场文书
杭州黄龙洞导游词
2015/02/10 职场文书
2015年驾驶员工作总结
2015/04/29 职场文书
详解pytorch创建tensor函数
2022/03/22 Python
不负正版帝国之名 《重返帝国》引领SLG手游制作新的标杆
2022/04/07 其他游戏