Javascript 说明:

JavaScript 和 Java 之间几乎没有任何关系。

JavaScript原名为LiveScript,他的作用只是为了处理一些复杂的动态网页。

目前,JS是遵循ECMAScript(ES6)规定的。


JavaScript 在HTML5中导入方式:

1. 元素导入:

<body>
<button onclick="alert('hello')"> 点我</button>
</body>

2. 内部文档导入:

<head>
<script>
alert('hello');
</script>
</head>

3. 外部文档导入:

<head>
<script type="text/javascript" src="js/test.js">
</script>
</head>

JavaScript 在HTML5中3种提示框(输出方式)

1. alert()

<script>
alert('hello');
</script>

2. comfirm()

<script>
confirm('hello');
</script>

3. prompt()

<script>
prompt('hello');
</script>

浏览器控制台输出

1. console方式:

  1. console.log()
//控制台上输出
var obj=[{name:1,age:22},{name:1,age:22}];
console.log(obj);
  1. console.dir()
//控制台上输出,比log更详细
var obj=[{name:1,age:22},{name:1,age:22}];
console.dir(obj);
  1. console.table()
//控制台上输出,以表的形式展现
var obj=[{name:1,age:22},{name:1,age:22}];
console.table(obj);

** 结果:**

name age
1 22
2 23

2. document方式:

<script>
// 向网页上面直接写
document.write('hello');
</script>

JavaScript 类型检查

  • typeof: 检测数据类型的运算符

 typeof 1 => "number";
  • instanceof: 检测某个实例是否属于这个类

  • constructor: 获取当前实例的构造器

JavaScript 中function:

1. 自动执行函数
1. ~function(){}()
2. !function(){}()
3. +function(){}()
4. -function(){}()

这四种function()就是一种对函数 -->;(function(n){})(10) ===>自动执行(该function是集定义与执行传参为一体的函数),注意function名字前面有个分号;该作用就是区分函数块的,否则在执行函数时,会有函数嵌套。

上面这四种符号都是为了简化.

2. 普通函数

function A()
{
alert('test');
}

如果在调用的时候A 这样就只是会返回函数的地址,而A() 则会执行A函数

3. this

1:
function fun(){
console.log(this) // this--> window
} 2:
var obj = {fn:fn}; first fn is attr,and second is function fn();
fn(); // this --> window
obj.fn(); // this --> obj 3:
function sum(){
fn(); // this --> window
}

注:

  1. this 指向的object 要看function 执行前面是否有.
  • 如果前面没有.

    • this 永远指向 window/根对象
  • 如果有.
    • this 指向. 之前的对象
  1. 自动执行函数中的this 永远指向window

    this --> window

4.工厂模式

  • 工厂模式:
	function createPerson(name,age){
var obj = new Object() // 或者 var obj = {};
obj.name = name;
obj.age = age;
obj.print = function(){
document.write('name:' + obj.name + 'age:' + obj.age);
}
return obj;
} var person = createPerson(name,age);
  • 普通构造函数模式:
	function Person(namme,age){
//默认创建实例返回
this.name = name;
this.age = age;
this.print = function(){
document.write('name:' + this.name + 'age:' + this.age);
}
}

注:

  • 工厂模式,最重要的是在函数执行里 ,new了 一个对象,最后返回这个对象。
  • 普通模式,不会返回任何东西
  • JS 不存在重载,后者会覆盖前者

最后说下:

function test(){
.name = function(){ // 这里"." 作用是啥?
}
}

上面函数中 . 点号的作用是啥?

JavaScript Simple Explain and Use的更多相关文章

  1. javascript simple MVC

    <h3>javascript simple MVC</h3> <div> <select name="" id="setAnim ...

  2. JavaScript Simple

    ylbtech-JavaScript: 1.返回顶部 1.   2. 2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部     6.返回顶部   作者:ylbtech出处:http: ...

  3. Memory leak patterns in JavaScript

    Handling circular references in JavaScript applications Plugging memory leaks in JavaScript is easy ...

  4. 谈谈JavaScript MVC模式

    第一个是:没有使用mvc模式的: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "h ...

  5. JavaScript对象的创建之使用json格式定义

    json: javascript simple object notation. json就是js的对象,但是它省去了xml中的标签,而是通过{}来完成对象的说明. 定义对象 var person = ...

  6. mysql中explain

    1.select_type: /* select_type 使用 SIMPLE */explain select * from tb_shop_order where id='201603292570 ...

  7. 为Node.js编写组件的几种方式

    本文主要备忘为Node.js编写组件的三种实现:纯js实现.v8 API实现(同步&异步).借助swig框架实现. 关键字:Node.js.C++.v8.swig.异步.回调. 简介 首先介绍 ...

  8. Cheatsheet: 2014 07.01 ~ 07.31

    Web Maximize Compression with Zopfli Browser Detection with JavaScript Simple MySQL Master HA with m ...

  9. js 中使用工厂方法和构造器方法

    1 直接创建对象 <!DOCTYPE html> <html> <head lang="en"> <meta charset=" ...

随机推荐

  1. Codeforces Round #267 (Div. 2) C. George and Job(DP)补题

    Codeforces Round #267 (Div. 2) C. George and Job题目链接请点击~ The new ITone 6 has been released recently ...

  2. leetcode 690. Employee Importance——本质上就是tree的DFS和BFS

    You are given a data structure of employee information, which includes the employee's unique id, his ...

  3. ZOJ 3964 Yet Another Game of Stones Nim游戏变种

    ZOJ3964 解题思路 此题的题意比较容易理解,可以简单的看着 Nim 博弈的变种.但问题在于 Alice 对第 i 堆石子的取法必须根据 bi 确定.所以如果这个问题能够归结到正常的 Nim 博弈 ...

  4. RAR去除广告

    现在注册已经不能去掉广告了,给你一个100%有效的办法(##此教程已更新,最新的winrar5.5同样适用,但是多了一个步骤) 电脑桌面新建一个txt文件,重命名为“rarreg.key” 2. 将. ...

  5. jQuery:has()和jQuery:contains()及jQuery:empty

    jQuery:has()和jQuery:contains()两个方法比较类似.不同点在于: has是判断标签的 contains是判断文本的 1.jQuery:has() <div>< ...

  6. 从缓冲上看阻塞与非阻塞socket在发送接收上的区别(转载)

    转自:http://blog.chinaunix.net/uid-24517549-id-4044877.html   首先socket在默认情况下是阻塞状态的,这就使得发送以及接收操作处于阻塞的状态 ...

  7. PCB 圆形板切边算法 实现

    在工程CAM处理圆形拼板是个头疼的问题,需人工程师自行设计切边 满足可以拼板并且拼板后锣板板边没有内角,不然会影响装配 1.原始单 PCS圆形板 此外形如果不采用邮票孔连接的话,采V-CUT连接须采用 ...

  8. bzoj 1668: [Usaco2006 Oct]Cow Pie Treasures 馅饼里的财富【记忆化搜索+剪枝】

    c[x][y]为从(x,y)到(n,m)的最大值,记忆化一下 有个剪枝是因为y只能+1所以当n-x>m-y时就算x也一直+1也是走不到(n,m)的,直接返回0即可 #include<ios ...

  9. [Swift通天遁地]一、超级工具-(17)自定义的CVCalendar日历

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  10. vs2017 + miniUI 后端框架使用

    vs2017 +  miniUI  后端框架使用 上miniUI官网直接下载框架.http://www.miniui.com/ 此框架使用说明很清楚. 2.1.vs2017创建安装miniUI后端框架 ...