标签:声明 property for 构造 ast 质数 遍历 val 参数
会陆续更新
1.变量声明
var a;
变量
var b = 100
变量名必须是英文字母、_、$开头
必须是英文字母、_、数字结尾
不可用系统的关键字保留字作为变量名
2.数据类型
运算的优先级大于赋值
js天生浮点型
原始值 stack 栈 不可改变, 重新赋值就是在新的房间重新定义了新值,之前的那个回复房间号,和磁盘一样,不会被永久删除,只是会覆盖之前的数据
Number
String
Boolean
undefined
null
Symbol
var a = 10
var b = a
a = 20
console.log(a,b) a = 20 , b = 10
值存放在底部,先进后出
引用值 heap 堆
Object
Array
function
var arr = [1.2]
var arr1 = arr
arr.push(3)
结果都会变
var arr = [1,2]
var arr1 = arr
arr = [1,3] 在堆里面开辟了一个新的值
打印结果 arr [1,3] arr1 [1,2] 结果不一样
字符串和任何东西相加都是字符串类型的
Infinity + 1 == Infinity true
& 是表示位的与运算,把左右两边的数字转换成为二进制,然后每一位分别进行比较,如果相等就返回1,不相等就为0,同时具有强制转换的功能,把false,true转换成0和1进行比较
计算2的n次幂
let n = parseInt(window.prompt(‘2的n次幂‘))
let m = 1
for(i = 0; i < n; i++){
m *=2
}
console.log(m)
5的阶乘
let a = 1
for(i = 1; i <= 5; i++){
a *=i
}
打印 a
比较三个数中最大的一个
原型,在出生的时候就被定义好了
绝大多数对象的最终的会继承Object.prototype
var b = Object.create(null) 没有原型
Math.ceil(0.1) 1 向上取整
Math.floor(9.9) 9 向下取整
function Person(name,age){
this.name = name
this.age = age
}
var person = new Person()
var obj = {
name:123
}
Person.call(obj,‘张三‘,18)
obj继承了Person的属性,自身的会被覆盖了
function Wheel(style,wheelSize){
this.style = style
this.wheelSize = wheelSize
}
function Sit(c,sitColor){
this.c= c
this.sitColor = sitColor
}
function Model(height,width,len){
this.height= height
this.width = width
this.len = len
}
function Car(whellArr,c,sitColor,height,width,len){
Wheel.apply(this,whellArr)
Sit.call(this,c,sit,Color)
Model.call(this,height,width,len)
}
var whellArr = [1,2]
var car = new Car(whellArr,3,4,5,6,7)
call apply 改变this指向 传参列表不同
call 一个一个参数传
apply 那参数放在数组里,传递的是一个数组
继承 圣杯模式
Father.prototype = {
name: ‘张三‘
}
function Father(){}
function Son(){}
function inherit(Target,Orgin){
function F(){}
F.prototype = Orgin.prototype
Targit.prototype = new F()
Targit.prototype.constuctor = Target // 让他原型等于他自己
Targit.prototype.uber = Orgin.prototype // 最终继承的是谁
}
inherit(Son,Father)
Son.prototype = {
sex:‘男‘
}
var son = new Son()
var father = new Father()
单独修改son的原型
var inherit = (function(){
var F = function(){}
return function (Target,Orgin){
F.prototypr = Orgin.prototype
Target.prototype = new F()
Targin.prototype.constutor = Target
Target.prototype.uber = Orgin.prototype
}
})()
inherit(Son,Father)
标签:声明 property for 构造 ast 质数 遍历 val 参数
原文地址:https://www.cnblogs.com/eternityyl/p/14081453.html