JavaScript基础知识(JSON、Function对象、原型、引用类型)
19、JSON
概念: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(字符串) ---- (客户端=>服务器),
20、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 构造函数名称( );
21、原型
在 JavaScript 中,函数是一个包含属性和方法的 Function 类型的对象。
属性(Prototype) 在函数定义时就已经存在,是Function对象(即函数)预定义的一个属性;它的初始值是一个空对象。在 JavaScript 中没有定义函数的原型类型,所以原型可以是任何类型。
原型是用于保存对象的共享属性和方法,原型的属性和方法并不影响函数本身属性和方法。
² 显式原型 - Function 的 prototype
在真实的开发环境中使用
² 隐式原型 - Function 的 __proto__
用于开发过程中的测试,不能被使用在真实的开发环境中
20、引用类型
数据类型:
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基础知识(JSON、Function对象、原型、引用类型)的更多相关文章
- JavaScript 基础(二) - 创建 function 对象的方法, String对象, Array对象
创建 function 对象的两种方法: 方式一(推荐) function func1(){ alert(123); return 8 } var ret = func1() alert(ret) 方 ...
- JavaScript基础知识之——Location 对象详解
属性 描述 location.hash 设置或取得 URL 中的锚 location.host 设置或取得 URL 中主机(包括端口号) location.hostname 设置或取得 URL 中的主 ...
- Javascript基础知识总结一
Javascript基础知识总结一 <!DOCTYPE html> <html> <head lang="en"> <meta chars ...
- 学习javascript基础知识系列第二节 - this用法
通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...
- 学习javascript基础知识系列第三节 - ()()用法
总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...
- JavaScript 基础知识 - BOM篇
前言 本篇文章是JavaScript基础知识的BOM篇,如果前面的<JavaScript基础知识-DOM篇>看完了,现在就可以学习BOM了. 注意: 所有的案例都在这里链接: 提取密码密码 ...
- JavaScript高级篇之Function对象
JavaScript高级篇之Function对象 一: Function对象引入: Function对象是js的方法对象,可以用Function实例化出任何js方法对象. 例如: <%@ pag ...
- javascript的基础知识及面向对象和原型属性
自己总结一下javascript的基础知识,希望对大家有用,也希望大家来拍砖,毕竟是个人的理解啊 1.1 类型检查:typeof(验证数据类型是:string) var num = 123; cons ...
- 林大妈的JavaScript基础知识(三):JavaScript编程(3)原型
在一般的编程语言中,我们使用继承来复用代码,做成良好的数据结构.而在JavaScript中,我们使用原型来实现以上的需求.由于JavaScript专注于对象而摒弃了类,我们要明白原型和继承的确是有差异 ...
随机推荐
- dubbo2.5.6从下载到编译成功并且部署成功过程
本文基于dubbo2.5.6版本 原文链接:http://www.cnblogs.com/zhuwenjoyce/ 1,下载dubbo 首先从 github 下载源代码并阅读 readme ...
- solr6.5搭建以及使用经验
首先搭建环境为Linux 6.5 64位 jdk1.7 将webapp目录复制到tomcat下的webapps目录下 可以修改文件夹名为solr(这个自己随意定义,项目名而已) 在tomcat目录下 ...
- Bat脚本命令说明
命名参考 使用方式如果不知道如何使用就到cmd窗口键入help 命名名 例如:"help del" 命令名 注释 ASSOC 显示或修改文件扩展名关联. ATTRIB 显示或更改文 ...
- 商城项目整理(三)JDBC增删改查
商品表的增加,修改,删除,订单表的增加,确认,用户表的查看,日志表的增加,查看 商品表建表语句: create table TEST.GOODS_TABLE ( gid NUMBER not null ...
- C# 内存模型
C# 内存模型 This is the first of a two-part series that will tell the long story of the C# memory model. ...
- AntData.ORM框架 之 读写分离
环境准备 准备2台机器配置好Master Slaver模式 我是用vmware 2台虚拟机配置的.有需要请联系. Master:192.168.11.130 Slaver:192.168.11.133 ...
- bzoj 1835: [ZJOI2010]base 基站选址
Description 有N个村庄坐落在一条直线上,第i(i>1)个村庄距离第1个村庄的距离为Di.需要在这些村庄中建立不超过K个通讯基站,在第i个村庄建立基站的费用为Ci.如果在距离第i个村庄 ...
- js知识点记录
1.for...in:用于遍历数组或对象的属性. for(var prop in obj){console.log(obj[prop])}; 该循环遍历对于对象属性是无序的,可能是因为obj本来就是无 ...
- /sbin/nologin 和 /bin/false 的区别
/bin/false是最严格的禁止login选项,一切服务都不能用,而/sbin/nologin只是不允许系统login,可以使用其他ftp等服务 如果想要用false在禁止login的同时允许ftp ...
- Cleaner, more elegant, and harder to recognize (msdn blog)
It appears that some people interpreted the title of one of my rants from many months ago, "Cle ...