详解JavaScript基础知识(JSON、Function对象、原型、引用类型)


Posted in Javascript onJanuary 16, 2018

1、JSON

详解JavaScript基础知识(JSON、Function对象、原型、引用类型)

概念:JavaScript 对象表示法(JavaScript Object Notation),是一种轻量级的数据交换格式

特点:易于程序员编写和查看;易于计算机解析和生成

数据结构:Object对象格式   { key: value , key: value }

Array数组格式   [ value , value ]

Eg:  var json = ‘ { “   ” : ‘'  ‘' } '    (内部双引号,外部单引号)

 * JSON - 支持独立的".json"文件;   允许嵌套

JSON格式在主流开发语言中几乎都支持--- 各个语法语言的共识就是字符串

JSON中的字符串只能使用双引号 

* 支持的数据类型: string; number; boolean; null; object; array

     转换JSON对象与字符串

转换为JSON对象: JSON.parse(对象)  ---(服务器=>客户端), 解析JSON字符串,

转换为JSON字符串:JSON.stringify(字符串)  ---- (客户端=>服务器),

2、Function对象

   函数与Function对象:

Function类型是JavaScript提供的引用类型之一;通过Function类型创建了一个Function类型的对象,该对象实际是一个[函数]。

var 对象名 = new Object( );   ---创建对象

var 函数名 = new Function( );   // function anonymous( ){}

【在JavaScript 中,所有函数是Function的对象】

var 函数名 = new Function(参数,函数体);

括号( )里面最后一个参数,识别为函数体, 除此都是形参。---不建议

   构造函数:

作用:为了创建对象(工厂方式)

语法结构:

function 构造函数名称(形参){
 this.属性名 = 属性值;    ---- this的含义 -> 指的是创建的对象
 this.方法名 = function( ){ }   
}
var 对象名 = new 构造函数名称( );

3、原型

在 JavaScript 中,函数是一个包含属性和方法的 Function 类型的对象。

属性(Prototype) 在函数定义时就已经存在,是Function对象(即函数)预定义的一个属性;它的初始值是一个空对象。在 JavaScript 中没有定义函数的原型类型,所以原型可以是任何类型。

原型是用于保存对象的共享属性和方法,原型的属性和方法并不影响函数本身属性和方法。

²  显式原型 - Function 的 prototype

在真实的开发环境中使用

²  隐式原型 - Function 的 __proto__

用于开发过程中的测试,不能被使用在真实的开发环境中

4、引用类型

   数据类型:

Number-通过创建对象方式定义数字;      String-通过创建对象方式定义数字;

Boolean-通过创建对象方式定义数字;

   Date类型

作用:获取常规的日期+时间

getFullYear( ) : 获取年份;   getMonth( ) : 获取月份;     getDate( ):获取日期

getTime ( ):距离1970年1月1日到目前的时间和日期 [利用毫秒值进行时间的计算;实现时间戳(标识)]

eg: 日期格式为 YYYY年MM月DD日的当前时间

var date = new Date( );
console.log(date.getFullYear( ) + '年' + date.getMonth( ) + '月' + date.getDay( ) + '日');

  Math类型

属性:PI - 圆周率                              注:不需要创建对象

方法:对数字的处理

ceil(x):向上取整即增;       floor(x):向下取整即舍;     round(x):四舍五入

pow(x1, x2):n1的n2次方     random( ):生成0-1之间的随机数

eg:0-100随机数   console.log(Math.random( )*100);     

1-100随机整数  console.log(Math.random( )*99+1);

20%概率执行一,50%概率执行二  if( num <= 0.2 ){

                                      } else {

                                    }

   Global类型

全局对象:全局属性(Infinity、NaN、undefined)、全局方法,在JavaScript中任何位置都可调用。                    

Javascript 相关文章推荐
javascript学习之闭包分析
Dec 02 Javascript
js 获取后台的字段 改变 checkbox的被选中的状态 代码
Jun 05 Javascript
JavaScript中停止执行setInterval和setTimeout事件的方法
May 14 Javascript
JQuery 动态生成Table表格实例代码
Dec 02 Javascript
微信小程序实战之仿android fragment可滑动底部导航栏(4)
Apr 16 Javascript
JavaScript正则表达式和级联效果
Sep 14 Javascript
基于js 字符串indexof与search方法的区别(详解)
Dec 04 Javascript
webpack热模块替换(HMR)/热更新的方法
Apr 05 Javascript
vue.js打包之后可能会遇到的坑!
Jun 03 Javascript
Vue props用法详解(小结)
Jul 03 Javascript
配置eslint规范项目代码风格
Mar 11 Javascript
js之切换全屏和退出全屏实现代码实例
Sep 09 Javascript
浅谈vue的props,data,computed变化对组件更新的影响
Jan 16 #Javascript
Parcel 打包示例(React HelloWorld)
Jan 16 #Javascript
详解Vue快速零配置的打包工具——parcel
Jan 16 #Javascript
vue watch自动检测数据变化实时渲染的方法
Jan 16 #Javascript
动态加载权限管理模块中的Vue组件
Jan 16 #Javascript
vue2.0 兄弟组件(平级)通讯的实现代码
Jan 15 #Javascript
解析Angular 2+ 样式绑定方式
Jan 15 #Javascript
You might like
Zend Framework教程之Application用法实例详解
2016/03/14 PHP
javascript 构造函数强制调用经验总结
2012/12/02 Javascript
js动态为代码着色显示行号
2013/05/29 Javascript
js获取客户端网卡的IP地址、MAC地址
2014/03/26 Javascript
jQuery模拟新浪微博首页滚动效果的方法
2015/03/11 Javascript
JS实现图片剪裁并预览效果
2016/08/12 Javascript
jQuery弹出下拉列表插件(实现kindeditor的@功能)
2016/08/16 Javascript
利用Js+Css实现折纸动态导航效果实例源码
2017/01/25 Javascript
jQuery读取XML文件的方法示例
2017/02/03 Javascript
Vue.js 点击按钮显示/隐藏内容的实例代码
2018/02/08 Javascript
JS实现左边列表移到到右边列表功能
2018/03/28 Javascript
javascript使用正则实现去掉字符串前面的所有0
2018/07/23 Javascript
vue项目初始化到登录login页面的示例
2019/10/31 Javascript
vue全屏事件开发详解
2020/06/17 Javascript
[46:14]VGJ.T vs Liquid 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
Python格式化压缩后的JS文件的方法
2015/03/05 Python
python 信息同时输出到控制台与文件的实例讲解
2018/05/11 Python
Python实现对特定列表进行从小到大排序操作示例
2019/02/11 Python
python 判断字符串中是否含有汉字或非汉字的实例
2019/07/15 Python
python由已知数组快速生成新数组的方法
2020/04/08 Python
django-orm F对象的使用 按照两个字段的和,乘积排序实例
2020/05/18 Python
在tensorflow下利用plt画论文中loss,acc等曲线图实例
2020/06/15 Python
python logging模块的使用
2020/09/07 Python
详解Selenium 元素定位和WebDriver常用方法
2020/12/04 Python
瑜伽灵感珠宝:Satya Jewelry
2018/01/06 全球购物
体验完美剃须:The Art of Shaving
2018/08/06 全球购物
高性能装备提升营地:Kammok
2019/02/27 全球购物
销售顾问岗位职责
2014/02/25 职场文书
公司请假条格式
2014/04/11 职场文书
八荣八耻的活动方案
2014/08/16 职场文书
学生偷窃检讨书
2014/09/25 职场文书
四风批评与自我批评范文
2014/10/14 职场文书
世界文化遗产导游词
2015/02/13 职场文书
2015年保管员工作总结
2015/04/30 职场文书
实验心得体会范文
2016/01/25 职场文书
React如何创建组件
2021/06/27 Javascript