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. Android 的坑一 :android.content.res.Resources$NotFoundException: String resource ID #0x0 找不到资源文件ID #0x0

    原因分析如下: 遇到这种情况,很有可能是把一个int型业务数据的 设置setText()或者类似的方法中, 这样Android系统就会主动去资源文件当中寻找, 但是它不是一个资源文件ID, 所以就会报 ...

  2. linux进程间通信——netlink【转】

    本文转载自:http://blog.csdn.net/wangyuling1234567890/article/details/21561457 今天在看用户态与内核态通信相关东西时,发现了关于net ...

  3. lodop 打印

    使用Lodop打印: 一.在官网下载http://www.lodop.net/download.html 若是安装还是提示未安装,就按转这个 二.准备两个js 三.需要在页面最上面加入 <htm ...

  4. knockout 和mvc4结合使用

    Knockout (或者Knockout.js ,KnockoutJS)是一个开源的JavaScript库,网址为www.knockoutjs.com.Knockout语法简洁.可读性好,能轻松实现与 ...

  5. js 事件循环机制 EventLoop

    js 的非阻塞I/O  就是由事件循环机制实现的 众所周知  js是单线程的 也就是上一个任务完成后才能开始新的任务 那js碰到ajxa和定时器.promise这些异步任务怎么办那?这时候就出现了事件 ...

  6. [C和指针] 1-快速上手、2-基本概念、3-数据

    第1章 快速上手 1.1.1 空白和注释   程序的空白的作用: 空行将程序的不同部分分割开来:制表符缩进语句,可以更好地显示程序的结构等等.     软件最大的开销并非在于编写,而是在于维护,所以需 ...

  7. 最大化最小值poj2456Aggressive cows

    Aggressive cows Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 15528   Accepted: 7440 ...

  8. 初窥Android Studio

    Android Studio 是一个Android集成开发工具,基于IntelliJ IDEA. 类似 Eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于 ...

  9. 前端--2、CSS基础

    CSS的部分: CSS四种类引入方式(了解) style的定义原则: 基本选择器 示例: 层级选择器 组合选择器 后代选择器 ★ 子代选择器 毗邻选择器 普通兄弟选择器 “与”选择器 ★ “或”选择器 ...

  10. 08使用NanoPiM1Plus在Android4.4.2下接TF卡

    08使用NanoPiM1Plus在Android4.4.2下接TF卡 大文实验室/大文哥 壹捌陆捌零陆捌捌陆捌贰 21504965 AT qq.com 完成时间:2017/12/5 17:51 版本: ...