ES5 常用 语法(object Arrary 函数绑定this指向)

时间:2021-12-01 10:10:12

ES object 扩展

ES object 扩展1.

<!DOCTYPE html>
<html> <head>
<link rel="shortcut icon" href="./assets/favicon.ico" />
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
<title>webpack</title>
</head> <body>
<script type="text/javascript">
// ******object 扩展************
//1.
var obj={name:'kebo', sex:'男'}
var obj1 =Object.create(obj,{
age:{
value:25,
writable:true,//可被修改
configurable:true, //可被删除
enumerable:true
}
})
console.log("obj1-----",obj1)
obj1='kebo' // 修改对象的属性
// console.log("obj1-----###",obj1)
// delete obj1 // 删除对象
// console.log(obj1) for (var i in obj1){
console.log(i)
}
</script> 
</body>
</html>

  ES object 扩展2.

<!DOCTYPE html>
<html>
<head>
<link rel="shortcut icon" href="./assets/favicon.ico" />
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
<title>webpack</title>
</head> <body>
<script type="text/javascript">
// ******object 扩展************ var obj2 ={fistName:'kebe',lastName:'bryant'};
Object.defineProperties(obj2,{
fullName: {
get: function(){ // 获取对应的值 惰性求值 被调用时才执行
return this.fistName + ' ' + this.lastName;
},
set: function(data){ // 监听对象的属性 发送改变是调用
console.log("obj2-------------",data)
var names=data.split(' ')
this.fistName=names[0]
this.lastName=names[1]
return this.fistName + ' ' + this.lastName;
}
},
})
console.log(obj2)
console.log('before',obj2.fullName)
obj2.fullName='kebe kebe';
console.log('after',obj2.fullName)
</script>
</body>
</html>

  ES object 扩展3

<!DOCTYPE html>
<html>
<head>
<link rel="shortcut icon" href="./assets/favicon.ico" />
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
<title>webpack</title>
</head> <body>
<script type="text/javascript">
// ******object 扩展************
var obj3 ={
fistName:'kebe',
lastName:'bryant',
get function(){ // 获取对应的值 惰性求值 被调用时才执行
return this.fistName + ' ' + this.lastName;
},
set function(data){ // 监听对象的属性 发送改变是调用
console.log("obj2-------------",data)
var names=data.split(' ')
this.fistName=names[0]
this.lastName=names[1]
return this.fistName + ' ' + this.lastName;
}
}
console.log(obj2)
console.log('before',obj2.fullName)
obj2.fullName='kebe kebe';
console.log('after',obj2.fullName) </script>
</body>
</html>

  ES Arrary map, forEach ,filter(返回条件为true 的值)

var arr=[1,5,9,4,465,485,56,25,4,48,54]
console.log('4的下标',arr.indexOf(4))
console.log('4的下标',arr.lastIndexOf(4))
arr.forEach(function(item,index){
console.log("item--",item)
}) var arr1=arr.map((item,index)=>{
return item+10;
})
console.log("arr1--",arr1) var arr2=arr.filter((item,index)=>{
return item >25;
})
console.log("arr2 大于25的数--",arr2)

  ES 函数语法 this指向绑定

var obj1={userName:'kobe'}
function foo1(data) {
console.log(this,data) } foo.call(obj1,33) //直接从第二个数据开始穿入
foo.apply(obj1,[33,45]) //第二个参数必须是数组 var bar = foo.bind(obj) //绑定后没有以及执行 返回一个值
console.log('bar',bar)
bar()
console.log('2222222222')
foo.bind(obj)(33666) //加()调用函数 直接从第二个数据开始穿入 var obj1={userName:'kobe'}
setTimeout(function () {
console.log("this---",this)
}.bind(obj1),1000)

  

  

ES5 常用 语法(object Arrary 函数绑定this指向)的更多相关文章

  1. ES5与ES6常用语法教程之 ①函数写法、创建对象、导入导出模块方式

    函数写法区别 计算a, b两个数字之和,有返回值 es5 写法 function add(a, b) { return a + b; } es6 写法(箭头函数) let add = (a, b) = ...

  2. MySQL常用语法命令及函数

    #创建数据库# create database 数据库名; #查看数据库# show databases; #选择数据库# use 数据库名; #删除数据库# drop database 数据库名; ...

  3. Vue常用语法及命令

    1,Vue常用语法 vue常用语法之变量的定义 // 1,变量相关 // 变量的提升 var username = "雪雪"; var username ; console.log ...

  4. js bind 绑定this指向

    1.示例代码 <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UT ...

  5. ES5与ES6常用语法教程之 ②解构语法糖、声明变量异同

    js常用语法系列教程如下 es5与es6常用语法教程(1) es5与es6常用语法教程(2) es5与es6常用语法教程(3) es5与es6常用语法教程(4) es5与es6常用语法教程(5) es ...

  6. sql数据库基础知识整理,常用函数及常用语法

    1常用数据库聚合函数max()min()sum()avg()count() 2字符串处理函数len() 与 datalength()  区别:len是返回字符长度  datalength是返回字节长度 ...

  7. ES5与ES6常用语法教程之 ③模板字符串、判断字符串是否包含其它字符串

    这部分教程我们主要讲解以下几个常用语法 模板字符串 带标签的模板字符串 判断字符串中是否包含其他字符串 给函数设置默认值 模板字符串 老式的拼接字符串方法 let dessert = '

  8. ES6常用语法

    ECMAScript 6(以下简称ES6)是JavaScript语言的下一代标准.因为当前版本的ES6是在2015年发布的,所以又称ECMAScript 2015. 也就是说,ES6就是ES2015. ...

  9. es6的常用语法

    最常用的ES6特性 let, const, class, extends, super, arrow functions, template string, destructuring, defaul ...

随机推荐

  1. 1&period;Linux常用命令

    命令名称:ls 格式: ls  [-选项] [参数]  注:中括号表示可选 命令路径:/bin/ls 功能描述:显示信息 例如: 选项 -a 显示所有的文件,包括隐藏文件,(以 . 开头的文件) -l ...

  2. Windows环境下Redis

    Redis 是一个高性能的key-value数据库, 使用内存作为主存储,数据访问速度非常快,当然它也提供了两种机制支持数据持久化存储.比较遗憾的是,Redis项目不直接支持Windows,Windo ...

  3. HDU 1402&colon;A &ast; B Problem Plus

    A * B Problem Plus Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

  4. 站在K2角度审视流程--任务的独占与释放

    应用场景一:某件事情由A.B两人(或者更多人)完成,任务开始后,两人随时可以处理任务,只需有一人处理完成,此事情即可结束. 应用场景二:某件事情由A.B两人(或者更多人)完成,任务开始后,两人随时可以 ...

  5. Linux查看CPU信息

    1.  查看物理CPU的个数 #cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc –l 2.   查看逻辑CPU的个数 #ca ...

  6. MEMS Gyroscope Technology

    InvenSense®Technology Overview Our technology is comprised of five coreelements: our patented Nasiri ...

  7. 51 EEPROM操作模板

    各个型号容量及扇区请查datasheet #include <reg52.h> #include "intrins.h" typedef unsigned char b ...

  8. codinglife主题小修改和有意思的博客挂件

    这个主题很漂亮,不过为了迎合自己的喜好ヽ(•̀ω•́ )ゝ,修改了字号.阴影之类的小细节.同时下面还有我博客里面的两个有意思的小挂件,请向右边看(๑و•̀ω•́)و 1.主题修改:复制下面的css代码 ...

  9. php 中文切割字符串长度

    function msubstr($str, $start=0, $length, $charset="utf-8", $suffix=true) { if(function_ex ...

  10. django xdmin使用

    我们来看看我们原先django给我们自带的admin后台是什么样子的呢 有人说,你的界面怎么那么丑,我说这个还叫丑吗,他说丑,我说你来,我看看你的,上图 看到登录界面后,我说别看了,我去修改,修改,我 ...