GEE有很多类型的数据
本文主要介绍ee.Number的常见指令方法内容,完整指令方法见GEE ee.Number
ee.Number有以下常见指令方法内容
print(number)ee.Number()ee.Number.eq() 、ee.Number.neq()、ee.Number.lt()、ee.Number.lte()、ee.Number.gt()、ee.Number.gte()ee.Number.unitScaleee.Number.absee.Number.roundee.Number.ceilee.Number.flooree.Number.exp ee.Number.asideee.Number.sqrtee.Number.cbrtee.Number.powee.Number.logee.Number.log10ee.Number.maxee.Number.minee.Number.hypotee.Number.firstee.Number.firstNonZeroee.Number.andee.Number.oree.Number.notee.Number.addee.Number.subtractee.Number.multiplyee.Number.divideee.Number.modee.Number.sinee.Number.cosee.Number.tanee.Number.asinee.Number.acosee.Number.atanee.Number.sinhee.Number.coshee.Number.tanhee.Number.signumee.Number.bitwiseAndee.Number.bitwiseNotee.Number.bitwiseOree.Number.bitwiseXoree.Number.leftShiftee.Number.rightShiftee.Number.trigammaee.Number.gammaee.Number.gammaincee.Number.digammaee.Number.atan2ee.Number.clampee.Number.parseee.Number.formatee.Number.int / ee.Number.toIntee.Number.long / ee.Number.toLong ee.Number.short / ee.Number.toShort ee.Number.byte / ee.Number.toByteee.Number.double / ee.Number.toDoubleee.Number.float / ee.Number.toFloat 后置章节请阅读
【GEE笔记9】数值Number(常见指令方法2)
【GEE笔记10】数值Number(常见指令方法3)
【GEE笔记11】数值Number(常见指令方法4)
print(number)var number = ee.Number(2022)
print(number)

ee.Numberee.Number就是构建一个新的Number,也包括Number的计算
ee.Number(number)
print(ee.Number(0)); // 0
print(ee.Number(1)); // 1
print(ee.Number(0.0)); // 0
print(ee.Number(1.0)); // 1
print(ee.Number(-1.0)); // -1
print(ee.Number(Math.PI)); // 3.141592653589793
print(ee.Number(1.2e-35)); // 1.2e-35
print(ee.Number(3.4e10)); // 34000000000
ee.Number.eq() 、ee.Number.neq()、ee.Number.lt()、ee.Number.lte()、ee.Number.gt()、ee.Number.gte()
判断两个数值的大小关系,具体含义如上图,如果两个数值满足方法所定义的关系式,则返回1,不符合则返回0。
下面展示number.ep的用法和案例,和其余的一样。
Number.eq(right)
print('1 equal to 1?', ee.Number(1).eq(ee.Number(1))); // 1
print('1.001 equal to 1?', ee.Number(1.001).eq(ee.Number(1))); // 0

ee.Number.unitScale一般用于栅格值的转换。缩放输入的数值,使输入值 [min, max] 的范围变为 [0, 1]。范围之外的值不会被限制。如果 min == max,则返回 0。
Number.unitScale(min, max)
print('-10 scaled between [0, 100]', ee.Number(-10).unitScale(0, 100)); // -0.1
print('10 scaled between [0, 100]', ee.Number(10).unitScale(0, 100)); // 0.1
// 当min == max
print('10 scaled between [10, 100]', ee.Number(10).unitScale(10, 100)); // 0
// 下面将变换 min 和 max 的范围
print('-20 scaled between [10, 100]', ee.Number(-20).unitScale(10, 100)); // -0.333
print('30 scaled between [10, 100]', ee.Number(30).unitScale(10, 100)); // 0.222
对于后面出现的-0.33333和0.22222,有些读者可能一时间不太理解,下面我画图解释一下


ee.Number.abs用法
Number.abs()
案例
print('Absolute value of -1', ee.Number(-1).abs()); // 1
print('Absolute value of 0', ee.Number(0).abs()); // 0
print('Absolute value of 2.3', ee.Number(2.3).abs()); // 2.3
ee.Number.round用法
Number.round()
案例
print('10.4 rounds down', ee.Number(10.4).round()); // 10
print('10.5 rounds up', ee.Number(10.5).round()); // 11
print('10.9 rounds up', ee.Number(10.9).round()); // 11
ee.Number.ceil用法
Number.ceil()
案例
// Positive numbers.正数
print('Ceiling for 2.1', ee.Number(2.1).ceil()); // 3
print('Ceiling for 2.5', ee.Number(2.5).ceil()); // 3
print('Ceiling for 2.9', ee.Number(2.9).ceil()); // 3
// Negative numbers.负数
print('Ceiling for 2.1', ee.Number(-2.1).ceil()); // -2
print('Ceiling for 2.5', ee.Number(-2.5).ceil()); // -2
print('Ceiling for 2.9', ee.Number(-2.9).ceil()); // -2
ee.Number.floor用法
Number.floor()
案例
// Positive numbers.
print('Floor for 2.1', ee.Number(2.1).floor()); // 2
print('Floor for 2.5', ee.Number(2.5).floor()); // 2
print('Floor for 2.9', ee.Number(2.9).floor()); // 2
// Negative numbers.
print('Floor for -2.1', ee.Number(-2.1).floor()); // -3
print('Floor for -2.5', ee.Number(-2.5).floor()); // -3
print('Floor for -2.9', ee.Number(-2.9).floor()); // -3