JavaScript基础函数---李老师的
<!DOCTYPE html>
<html>
<head>
<title>demo2html</title>
<meta charset="utf-8"/>
<style type="text/css">
</style>
</head>
<body>
<script type="text/javascript">
/*创建函数和字面量函数*/
/*
function add(){
alert("函数创建成功")
};
var testfunction=function(){
alert("这是一个匿名函数");
};
add(); //调用函数
testfunction();//调用字面量函数
*/
/*
var testobj=new Object(); //创建对象
testobj.run=function(){ //给对象创建方法
alert("这是对象内部的方法");
};
testobj.run(); //调用对象的方法
*/
/*创建函数对象*/
/*
function ball(){
}
ball.name1="testing"; //给函数对象创建属性
alert(ball.name1); //访问函数属性
alert(typeof ball)
*/
/*函数的引用*/
/*
function myFunction(message){
alert(message);
}
var ptr=myFunction; //将函数的引用传递给变量
ptr("Testing"); //变量调用函数
*/
/*将函数的引用传递给对象*/
/*
function sayName(name1){
alert(name1);
}
var obj1=new Object();
var obj2=new Object();
var obj3=new Object();
obj1.sayMyName=sayName; //将引用传递给对象的变量,形成对象的方法
obj2.sayMyName=sayName;
obj3.sayMyName=sayName;
obj1.sayMyName("张三") //调用对象的方法
obj2.sayMyName("李四");
obj3.sayMyName("王五")
*/
/*
function add(){
}
add.message="chaiyesong"
var ptr1=add;
var ptr2=add;
alert(ptr1.message);
alert(ptr2.message)
add.message="123";
alert(ptr1.message)
alert(ptr2.message)
*/
/*引用指向另一个变量*/
/*
function add(){
alert("one");
}
var ptr=add;
ptr=function(){ //创建了另一个叫做myFunctionPtr的函数而不是修改它
alert("ptr")
}
add=function(){ //引用指向了另一个函数,修改了函数的引用
alert("two")
}
add()
ptr()
*/
/*创建函数对象*/
/*
function Ball(message){
alert(message)
}
var ball0=new Ball("testing")
ball0.name1="ball-0"
alert(ball0.name1)
function Ball(message){
alert(message)
}
var ball0=new Object()
ball0.constuct=Ball; //将函数的引用指向了一个对象的构造器
ball0.constuct("ceshiceshiceshi") //由这个对象的构造器执行此函数
ball0.name1="tesing"
alert(ball0.name1)
function Test(){
}
alert(Test.prototype) //共享属性
*/
/*添加共享属性*/
/*
function Fish(naem1,color1){
this.name1=naem1
this.color1=color1
}
Fish.prototype.LivesIn="water" //添加共享属性
Fish.prototype.price=20
var fish1=new Fish("mackrel","gray")
var fish2=new Fish("goldfish","orange");
var fish3=new Fish("salmon", "white");
for (var i=1; i<=3; i++)
{
var fish=eval("fish"+i); // 我只是取得指向这条鱼的指针
alert(fish.name1+","+fish.color1+","+fish.LivesIn+","+fish.price);
}
*/
/*
function Employee(name, salary)
{
this.name=name;
this.salary=salary;
}
Employee.prototype.getSalary=function getSalaryFunction()
{
return this.salary;
}
Employee.prototype.addSalary=function addSalaryFunction(addition)
{
this.salary=this.salary+addition;
}
var boss1=new Employee("Joan", 200000);
var boss2=new Employee("Kim", 100000);
var boss3=new Employee("Sam", 150000);
alert(boss1.getSalary()); // 输出 200000
alert(boss2.getSalary()); // 输出 100000
alert(boss3.getSalary()); // 输出 150000
*/
/*匿名函数*/
/*
(function(x,y){
alert(x+y)
})(2,3)//这个函数自我执行的能力
*/
/*执行并且调用函数*/
/*
var f1=function(){
return "testing"
}
alert(f1())
*/
/*将自我执行的结果给变量*/
/*
var f2=function(){
return "ok"
}()
alert(f2)
*/
// (
// function(){
// alert("fa")
// }()
// )
/*
function box(){
var user='Tt'
return function(){
return user;
}
}
alert(box()()) //调用内嵌函数
*/
// var b=box()
// alert(b())
/*通过闭包函数实行自动加*/
/*
function box(){
var age=100
return function(){ //调用的其实是这个方法,实现了数据在内存中驻留的时间
age++
return age;
}
}
var b=box()
alert(b())
alert(b())
alert(b())
*/
/*开始版*/
/*
function box(){
var arr=[] //申明一个数组
for (var i = 0; i <5; i++) {
arr[i]=function(){ //通过循环只是把函数赋值给了每个元素
return i;
}
}
return arr; //返回一个数组
}
var b=box() //把返回的数组赋值给b
document.writeln("数组的长度为:"+b.length+"<br />") //返回数组的长度
for (var i = 0; i < b.length; i++) {
document.writeln("匿名函数返回的值为:"+b[i]()+"<br />") //执行此函数每个元素的值是5,因为最后一个元素的值为5
};
*/
/*改进版*/
/*
function box1() {
var arr1 = [];
for (var i = 0; i < 5; i++) {
arr1[i] = (function (num) { //自我执行,把函数自我执行的结果赋值给了每个元素
return num;
})(i); //并且传参
}
return arr1;
}
var b1 = box1(); //返回时数组
for (var i = 0; i < b1.length; i++) {
document.writeln("改进后 输出的结果为:")
document.writeln(b1[i]+"<br />"); //这里返回的是数组,直接打印即可
}
*/
//测试版
/*
var testarr=[];
for (var i = 0; i < 5; i++) {
testarr[i]=function(){
return i;
}
};
document.writeln("测试板的长度为:"+testarr.length+"<br >")
for (var i = 0; i < testarr.length; i++) {
document.writeln("测试版第"+(i+1)+"次"+testarr[i]+"<br />")
};
var aa=function(){
return 3
}
document.writeln("测试版测试的结果"+aa)
*/
/*改进版3*/
/*
function box3() {
var arr3= [];
for (var i = 0; i < 5; i++) {
arr3[i] = (function (num) {
return function () {
return num;
}
})(i);//自我执行的结果赋值给每个元素,执行完了,将其执行的结果赋值给了每个元素
}
return arr3;
}
var b3= box3();
for (var i = 0; i < b3.length; i++) {
document.writeln(b3[i]()+"<br />");
}
*/
/*js函数教程地址://http://www.cnblogs.com/ttcc/p/3763437.html*/
/*闭包中的this指定的对象是window*/
/*
var user='The Window00';
var obj={
user:'The Window001',
getUserFunction:function(){
return function(){
return this.user;
}
}
}
document.writeln("返回this指定的对象"+obj.getUserFunction()())
*/
// function box(count1){
// var i=12;
// for (var i = 0; i < count1; i++) {
// document.writeln(i);
// }
// }
// var i=10
// box(2)
/*闭包执行完毕,立马清除内存数据*/
/*
function box(count) {
(function () {
for (var i = 0; i<count; i++){
}
})();
document.writeln(i); //报错,无法访问
}
box(2);
*/
/*通过闭包访问隐私属性*/
/*
function Box() {
var age = 100; //私有变量
function run() { //私有函数
return '运行中...';
}
this.get = function () { //对外公共的特权方法
return age + run();
};
}
var box = new Box();
alert(box.get());
function Person(value) {
var user = value; //这句可以省略
this.getUser = function () {
return user;
};
this.setUser = function (value) {
user = value;
};
}
*/
/*单例模式*/
/*
var box = function () {
var user = 'TT'; //私有变量
function run() { //私有函数
return '运行中...';
}
return {
publicGo : function () { //对外公共接口的特权方法
return user + run();
}
};
}();
alert(box.publicGo());
*/
/*单例模式*/
/*
function Desk() {
//定义了一个函数
}
var box = function () {
var user = 'TT'; //私有变量
function run() { //私有函数
return '运行中...';
}
var desk = new Desk(); //实例化自定义对象
desk.publicGo = function () {
return user + run(); //给自定义函数定义方法
};
return desk;
}();
alert(box.publicGo());
*/
</script>
</body>
</html>
JavaScript基础函数---李老师的的更多相关文章
- JavaScript基础函数的声明(014)
1.函数的重要地位 函数(functions)在JavaScript里有着重要的地位,其原因有二: 它们是一种特殊的对象 它们提供作用域 说函数在JavaScript里是特殊的对象,因为: 程序的执行 ...
- Javascript基础 函数“重载”
Javascript不像其他编程语言一样具有函数签名(什么是函数签名,简单的说就是说函数的接受参数类型和参数个数,也有人认为返回类型也应该包括.具体概念大家可以到网上查询). 所以Javascript ...
- JavaScript -基础- 函数与对象
一.JavaScript三对象 1.分类方式一 1)ECMAScript JavaScript的ECMA规范 JS本身的对象 2)Dom 操作HTML相关 3)BOM游览器对象 游览器窗口对象,全局的 ...
- JavaScript基础函数和词法分析以及常用的内置对象和使用方法(4)
day52 参考:https://www.cnblogs.com/liwenzhou/p/8004649.html 函数 函数定义 JavaScript中的函数和Python中的非常类似,只是定义方式 ...
- JavaScript基础函数的属性:记忆模式(019)
函数在Javascript里是有属性的,因为它们是一种特殊对象.事实上,就算是没有明确声明,函数在最初就已经包含了一些固有的属性,比如所有函数都length这个属性,它可以指出函数声明了多少个参数: ...
- JavaScript -基础- 函数与对象(二)String
一.判断数据类型typeof与判断对象类型instanceof 1.typeof typeof只能判断基础数据类型,无法判断引用数据类型 <script> var s="hell ...
- Javascript基础--函数(Function对象)
1.函数是一段可执行的代码,函数可多次调用,模块化管理. 2.使用function语句,function funName([arg1][,arg2]....[,argn]){代码块}.所有版本可用,一 ...
- Javascript基础——函数
一 函数的介绍 1.概念:由一堆代码按照一定的规则,组成实现了某个功能,通过函数自身或事件调用 函数的特点: 忽略细节:只关注其实现的功能,不关注内部构造: 重复使用:函数可以实现代码的重复利用: 选 ...
- JavaScript基础函数的配置对象Configuration Objects(020)
配置对象通常用在API库的实现中,当程序中需要编写要多次的模块,也可以采用这种模式.这种模式的好处是接口明确,扩展方便.比如,一个 addPerson在设计的最初需要两个参数作为初始化时人的姓名: f ...
随机推荐
- 分布式 基本理论 CAP 2
关于P P, 即 Partition字面意思是网络分区,其实 包括了 各种网络问题, 我们要把它理解 一个 广义的 分区问题. P 涉及到了 时间, 这么说吧, 出现了分区, 那就是节点之间 “长久的 ...
- Python校验用户名是否合法示例
#校验用户名是否合法例子: #输入账号密码 #input #如果账号存在提示已经注册,如果不存在的,就可以注册 all_users [] #不能为空 #strip() #用户名长度6-12之间 #le ...
- python3下获取主流浏览器和python的安装路径
#coding=utf-8#python3下获取主流浏览器和python的安装路径#by dengpeiyou date:2018-07-09import winreg,os #取得浏览器的安装路径d ...
- 《2018面向对象程序设计(Java)课程学习进度条》
周次 (阅读/编写)代码行数 发布博客量/博客评论数量 课堂/课余学习时间(小时) 最满意的编程任务 第一周 50/40 1/0 6/4 九九乘法表 第二周 100/80 1/0 6/8 实验5,6, ...
- 解析如何实现微信唤醒默认浏览器下载app教程!
前言 现如今微信对第三方app下载链接的拦截是越来越严格了,下载链接在微信中分享转发经常会被拦截,一旦被拦截用户就只能复制链接手动打开浏览器粘贴才能访问,如此给用户带来的体验台差,用户量无法有效地累积 ...
- xfs 的一些工具使用
[root@localhost caq]# xfs_db -c frag -r /dev/sdaw actual , ideal , fragmentation factor 82.56% Note, ...
- MongoDB主从复制和副本集
MongoDB有主从复制和副本集两种主从复制模式,主从复制最大的问题就是无法自动故障转移,MongoDB副本集解决了主从模式无法自动故障转义的特点,因此是复制的首选.对于简单的主从复制无法自动故障转移 ...
- Day01 -Class类别 精选面试题
30天修炼完成Ruby精选面试题! 我决定从学习Ruby on Rails开始着手!鼓励自己在短期间内专心学习与产出知识,为转职奠定良好的基础. A.首先:找寻方向,决定主题 我想很多人的状况都跟我一 ...
- Linux Simple Systemd Service Guide
Simple Systemd Service Guide 主题 Systemd介绍 Systemd基本操作 怎样编写_service_.service文件 怎样部署service Systemd介绍 ...
- pyparsing自定义解析规则
1.Word(token) 用于匹配由允许的字符集组成的单词,常见的错误是使用特定字符串Word("expr")匹配"expr" - L {alphas} 字 ...