Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

buy-vs-rent

Package Overview
Dependencies
Maintainers
1
Versions
23
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

buy-vs-rent - npm Package Compare versions

Comparing version 1.0.3 to 1.0.4

4

.eslintrc.js

@@ -29,5 +29,5 @@ module.exports = {

// 'indent': [2, 4],
'semi': [2, 'always'],
'semi': [0, 'always'],
'max-len': [1, { 'code': 150 }]
}
};
}
/*! Made by realgeoffrey */
var buyvsrent=function(F){function n(B){if(Q[B])return Q[B].exports;var U=Q[B]={i:B,l:!1,exports:{}};return F[B].call(U.exports,U,U.exports,n),U.l=!0,U.exports}var Q={};return n.m=F,n.c=Q,n.d=function(F,Q,B){n.o(F,Q)||Object.defineProperty(F,Q,{configurable:!1,enumerable:!0,get:B})},n.n=function(F){var Q=F&&F.__esModule?function(){return F.default}:function(){return F};return n.d(Q,"a",Q),Q},n.o=function(F,n){return Object.prototype.hasOwnProperty.call(F,n)},n.p="",n(n.s=0)}([function(module,exports,__webpack_require__){"use strict";eval('\n\nvar tools = {\n /**\n * 等额本息,每月还款数额\n * @param {Number} loan - 贷款量\n * @param {Number} loanRate - 贷款月利率\n * @param {Number} months - 还贷时间\n * @returns {Number} 每月还款数额\n */\n funcA: function funcA(_ref) {\n var loan = _ref.loan,\n loanRate = _ref.loanRate,\n months = _ref.months;\n\n // 月还款额 = 本金 * 月利率 * Math.pow(1 + 月利率, 还款总月数) / (Math.pow(1 + 月利率, 还款总月数) - 1)\n return loan * loanRate * Math.pow(1 + loanRate, months) / (Math.pow(1 + loanRate, months) - 1);\n },\n\n\n /**\n * 等额本金,每月还款数额的数组\n * @param {Number} loan - 贷款量\n * @param {Number} loanRate - 贷款月利率\n * @param {Number} months - 还贷时间\n * @returns {Array} 每月还款数额的数组\n */\n funcB: function funcB(_ref2) {\n var loan = _ref2.loan,\n loanRate = _ref2.loanRate,\n months = _ref2.months;\n\n var returnArr = [];\n var capital = loan / months; // 每月还的本金\n\n for (var month = 0; month < months; month += 1) {\n // 月还款额 = 本金 / 还款总月数 + 剩余本金 * 月利率\n returnArr.push(capital + (loan - capital * month) * loanRate);\n }\n\n return returnArr;\n }\n};\n\n/**\n * 方法描述(月)\n * @param {Number} [loan = 300] - 贷款量(万)\n * @param {Number} [loanRate = 0.049] - 贷款年利率\n * @param {Number} [months = 12 * 30,] - 还贷时间(月)\n * @param {Number} [cash = 100] - 现金量(万)\n * @param {Number} [cashRate = 0.04] - 现金年投资回报率\n * @param {Number} [rent = 0.4] - 租房租金(万)\n * @param {Number} [rentRate = 0.1] - 租房租金年涨幅率\n * @param {Number} [inflationRate = 0.05] - 年通货膨胀率\n */\nmodule.exports = function () {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref3$loan = _ref3.loan,\n loan = _ref3$loan === undefined ? 300 : _ref3$loan,\n _ref3$loanRate = _ref3.loanRate,\n loanRate = _ref3$loanRate === undefined ? 0.049 : _ref3$loanRate,\n _ref3$months = _ref3.months,\n months = _ref3$months === undefined ? 12 * 30 : _ref3$months,\n _ref3$cash = _ref3.cash,\n cash = _ref3$cash === undefined ? 100 : _ref3$cash,\n _ref3$cashRate = _ref3.cashRate,\n cashRate = _ref3$cashRate === undefined ? 0.04 : _ref3$cashRate,\n _ref3$rent = _ref3.rent,\n rent = _ref3$rent === undefined ? 0.4 : _ref3$rent,\n _ref3$rentRate = _ref3.rentRate,\n rentRate = _ref3$rentRate === undefined ? 0.1 : _ref3$rentRate,\n _ref3$inflationRate = _ref3.inflationRate,\n inflationRate = _ref3$inflationRate === undefined ? 0.05 : _ref3$inflationRate;\n\n // 买房的价格\n var housePrice = cash + loan;\n\n // 租房的现金\n loanRate = loanRate / 12; // 贷款月利率\n cashRate = cashRate / 12; // 现金月投资回报率\n rentRate = rentRate / 12; // 租房租金月涨幅率\n var loanPay = tools.funcA({ loan: loan, loanRate: loanRate, months: months }); // 等额本息,每月还款数额\n for (var month = 0; month < months; month += 1) {\n // 未买房获得的现金收益\n cash = (cash + loanPay - rent * (1 + rentRate)) * (1 + cashRate);\n }\n cash = cash.toFixed(2);\n\n // 通货膨胀和购买力\n var inflation = Math.pow(1 + inflationRate, months / 12).toFixed(2); // 还完款之后的通货膨胀倍数\n var power = (cash / inflation).toFixed(2); // 购买力\n\n return {\n housePrice: housePrice,\n cash: cash,\n inflation: inflation,\n power: power,\n msg: (months / 12).toFixed() + "\\u5E74\\u540E\\uFF1A<br>\\u4E70\\u623F\\u8005\\u83B7\\u5F97\\u5F53\\u5E74\\u603B\\u4EF7\\"" + housePrice + "\\u4E07\\"\\u7684\\u4E00\\u5957\\u623F\\u5B50\\uFF1B\\u79DF\\u623F\\u8005\\u83B7\\u5F97\\"" + cash + "\\u4E07\\"\\u73B0\\u91D1\\uFF08\\u8D2D\\u4E70\\u529B\\u76F8\\u5F53\\u4E8E\\u5F53\\u5E74\\u7684\\"" + power + "\\u4E07\\"\\uFF09\\uFF1B<br>\\u5F53\\u5E74\\u4E70\\u7684\\u623F\\u5B50\\u9700\\u8981\\u6DA8\\u81F3\\"" + (cash / housePrice).toFixed(2) + "\\u500D\\"\\u6301\\u5E73\\u79DF\\u623F\\u8005\\u73B0\\u91D1\\u6D41\\uFF1B<br>\\u7531\\u4E8E\\u901A\\u8D27\\u81A8\\u80C0\\uFF0C\\u7269\\u4EF7\\u5DF2\\u7ECF\\u662F\\u539F\\u6765\\u7684\\"" + inflation + "\\u500D\\"\\u3002"\n };\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvaW5kZXguanM/OTU1MiJdLCJuYW1lcyI6WyJ0b29scyIsImZ1bmNBIiwibG9hbiIsImxvYW5SYXRlIiwibW9udGhzIiwiTWF0aCIsInBvdyIsImZ1bmNCIiwicmV0dXJuQXJyIiwiY2FwaXRhbCIsIm1vbnRoIiwicHVzaCIsIm1vZHVsZSIsImV4cG9ydHMiLCJjYXNoIiwiY2FzaFJhdGUiLCJyZW50IiwicmVudFJhdGUiLCJpbmZsYXRpb25SYXRlIiwiaG91c2VQcmljZSIsImxvYW5QYXkiLCJ0b0ZpeGVkIiwiaW5mbGF0aW9uIiwicG93ZXIiLCJtc2ciXSwibWFwcGluZ3MiOiI7O0FBQUEsSUFBTUEsUUFBUTtBQUNaOzs7Ozs7O0FBT0FDLE9BUlksdUJBUXNCO0FBQUEsUUFBMUJDLElBQTBCLFFBQTFCQSxJQUEwQjtBQUFBLFFBQXBCQyxRQUFvQixRQUFwQkEsUUFBb0I7QUFBQSxRQUFWQyxNQUFVLFFBQVZBLE1BQVU7O0FBQ2hDO0FBQ0EsV0FBT0YsT0FBT0MsUUFBUCxHQUFrQkUsS0FBS0MsR0FBTCxDQUFTLElBQUlILFFBQWIsRUFBdUJDLE1BQXZCLENBQWxCLElBQW9EQyxLQUFLQyxHQUFMLENBQVMsSUFBSUgsUUFBYixFQUF1QkMsTUFBdkIsSUFBaUMsQ0FBckYsQ0FBUDtBQUNELEdBWFc7OztBQWFaOzs7Ozs7O0FBT0FHLE9BcEJZLHdCQW9Cc0I7QUFBQSxRQUExQkwsSUFBMEIsU0FBMUJBLElBQTBCO0FBQUEsUUFBcEJDLFFBQW9CLFNBQXBCQSxRQUFvQjtBQUFBLFFBQVZDLE1BQVUsU0FBVkEsTUFBVTs7QUFDaEMsUUFBTUksWUFBWSxFQUFsQjtBQUNBLFFBQU1DLFVBQVVQLE9BQU9FLE1BQXZCLENBRmdDLENBRUE7O0FBRWhDLFNBQUssSUFBSU0sUUFBUSxDQUFqQixFQUFvQkEsUUFBUU4sTUFBNUIsRUFBb0NNLFNBQVMsQ0FBN0MsRUFBZ0Q7QUFDOUM7QUFDQUYsZ0JBQVVHLElBQVYsQ0FBZUYsVUFBVSxDQUFDUCxPQUFPTyxVQUFVQyxLQUFsQixJQUEyQlAsUUFBcEQ7QUFDRDs7QUFFRCxXQUFPSyxTQUFQO0FBQ0Q7QUE5QlcsQ0FBZDs7QUFrQ0E7Ozs7Ozs7Ozs7O0FBV0FJLE9BQU9DLE9BQVAsR0FBaUIsWUFTVDtBQUFBLGtGQUFKLEVBQUk7QUFBQSx5QkFSTlgsSUFRTTtBQUFBLE1BUk5BLElBUU0sOEJBUkMsR0FRRDtBQUFBLDZCQVBOQyxRQU9NO0FBQUEsTUFQTkEsUUFPTSxrQ0FQSyxLQU9MO0FBQUEsMkJBTk5DLE1BTU07QUFBQSxNQU5OQSxNQU1NLGdDQU5HLEtBQUssRUFNUjtBQUFBLHlCQUxOVSxJQUtNO0FBQUEsTUFMTkEsSUFLTSw4QkFMQyxHQUtEO0FBQUEsNkJBSk5DLFFBSU07QUFBQSxNQUpOQSxRQUlNLGtDQUpLLElBSUw7QUFBQSx5QkFITkMsSUFHTTtBQUFBLE1BSE5BLElBR00sOEJBSEMsR0FHRDtBQUFBLDZCQUZOQyxRQUVNO0FBQUEsTUFGTkEsUUFFTSxrQ0FGSyxHQUVMO0FBQUEsa0NBRE5DLGFBQ007QUFBQSxNQUROQSxhQUNNLHVDQURVLElBQ1Y7O0FBQ047QUFDQSxNQUFNQyxhQUFhTCxPQUFPWixJQUExQjs7QUFFQTtBQUNBQyxhQUFXQSxXQUFXLEVBQXRCLENBTE0sQ0FLb0I7QUFDMUJZLGFBQVdBLFdBQVcsRUFBdEIsQ0FOTSxDQU1vQjtBQUMxQkUsYUFBV0EsV0FBVyxFQUF0QixDQVBNLENBT29CO0FBQzFCLE1BQU1HLFVBQVVwQixNQUFNQyxLQUFOLENBQVksRUFBRUMsVUFBRixFQUFRQyxrQkFBUixFQUFrQkMsY0FBbEIsRUFBWixDQUFoQixDQVJNLENBUW9EO0FBQzFELE9BQUssSUFBSU0sUUFBUSxDQUFqQixFQUFvQkEsUUFBUU4sTUFBNUIsRUFBb0NNLFNBQVMsQ0FBN0MsRUFBZ0Q7QUFBRztBQUNqREksV0FBTyxDQUFDQSxPQUFPTSxPQUFQLEdBQWlCSixRQUFRLElBQUlDLFFBQVosQ0FBbEIsS0FBNEMsSUFBSUYsUUFBaEQsQ0FBUDtBQUNEO0FBQ0RELFNBQU9BLEtBQUtPLE9BQUwsQ0FBYSxDQUFiLENBQVA7O0FBRUE7QUFDQSxNQUFNQyxZQUFZakIsS0FBS0MsR0FBTCxDQUFTLElBQUlZLGFBQWIsRUFBNEJkLFNBQVMsRUFBckMsRUFBeUNpQixPQUF6QyxDQUFpRCxDQUFqRCxDQUFsQixDQWZNLENBZWtFO0FBQ3hFLE1BQU1FLFFBQVEsQ0FBQ1QsT0FBT1EsU0FBUixFQUFtQkQsT0FBbkIsQ0FBMkIsQ0FBM0IsQ0FBZCxDQWhCTSxDQWdCd0M7O0FBRTlDLFNBQU87QUFDTEYsMEJBREs7QUFFTEwsY0FGSztBQUdMUSx3QkFISztBQUlMQyxnQkFKSztBQUtMQyxTQUFRLENBQUNwQixTQUFTLEVBQVYsRUFBY2lCLE9BQWQsRUFBUixzRkFBbURGLFVBQW5ELG9GQUE4RUwsSUFBOUUsMEZBQW9HUyxLQUFwRyw4RkFBK0gsQ0FBQ1QsT0FBT0ssVUFBUixFQUFvQkUsT0FBcEIsQ0FBNEIsQ0FBNUIsQ0FBL0gsc0tBQStMQyxTQUEvTDtBQUxLLEdBQVA7QUFPRCxDQWxDRCIsImZpbGUiOiIwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgdG9vbHMgPSB7XG4gIC8qKlxuICAgKiDnrYnpop3mnKzmga/vvIzmr4/mnIjov5jmrL7mlbDpop1cbiAgICogQHBhcmFtIHtOdW1iZXJ9IGxvYW4gLSDotLfmrL7ph49cbiAgICogQHBhcmFtIHtOdW1iZXJ9IGxvYW5SYXRlIC0g6LS35qy+5pyI5Yip546HXG4gICAqIEBwYXJhbSB7TnVtYmVyfSBtb250aHMgLSDov5jotLfml7bpl7RcbiAgICogQHJldHVybnMge051bWJlcn0g5q+P5pyI6L+Y5qy+5pWw6aKdXG4gICAqL1xuICBmdW5jQSh7IGxvYW4sIGxvYW5SYXRlLCBtb250aHMgfSkge1xuICAgIC8vIOaciOi/mOasvuminSA9IOacrOmHkSAqIOaciOWIqeeOhyAqIE1hdGgucG93KDEgKyDmnIjliKnnjocsIOi/mOasvuaAu+aciOaVsCkgLyAoTWF0aC5wb3coMSArIOaciOWIqeeOhywg6L+Y5qy+5oC75pyI5pWwKSAtIDEpXG4gICAgcmV0dXJuIGxvYW4gKiBsb2FuUmF0ZSAqIE1hdGgucG93KDEgKyBsb2FuUmF0ZSwgbW9udGhzKSAvIChNYXRoLnBvdygxICsgbG9hblJhdGUsIG1vbnRocykgLSAxKTtcbiAgfSxcblxuICAvKipcbiAgICog562J6aKd5pys6YeR77yM5q+P5pyI6L+Y5qy+5pWw6aKd55qE5pWw57uEXG4gICAqIEBwYXJhbSB7TnVtYmVyfSBsb2FuIC0g6LS35qy+6YePXG4gICAqIEBwYXJhbSB7TnVtYmVyfSBsb2FuUmF0ZSAtIOi0t+asvuaciOWIqeeOh1xuICAgKiBAcGFyYW0ge051bWJlcn0gbW9udGhzIC0g6L+Y6LS35pe26Ze0XG4gICAqIEByZXR1cm5zIHtBcnJheX0g5q+P5pyI6L+Y5qy+5pWw6aKd55qE5pWw57uEXG4gICAqL1xuICBmdW5jQih7IGxvYW4sIGxvYW5SYXRlLCBtb250aHMgfSkge1xuICAgIGNvbnN0IHJldHVybkFyciA9IFtdO1xuICAgIGNvbnN0IGNhcGl0YWwgPSBsb2FuIC8gbW9udGhzOyAgLy8g5q+P5pyI6L+Y55qE5pys6YeRXG5cbiAgICBmb3IgKGxldCBtb250aCA9IDA7IG1vbnRoIDwgbW9udGhzOyBtb250aCArPSAxKSB7XG4gICAgICAvLyDmnIjov5jmrL7pop0gPSDmnKzph5EgLyDov5jmrL7mgLvmnIjmlbAgKyDliankvZnmnKzph5EgKiDmnIjliKnnjodcbiAgICAgIHJldHVybkFyci5wdXNoKGNhcGl0YWwgKyAobG9hbiAtIGNhcGl0YWwgKiBtb250aCkgKiBsb2FuUmF0ZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJldHVybkFycjtcbiAgfVxuXG59O1xuXG4vKipcbiAqIOaWueazleaPj+i/sO+8iOaciO+8iVxuICogQHBhcmFtIHtOdW1iZXJ9IFtsb2FuID0gMzAwXSAtIOi0t+asvumHj++8iOS4h++8iVxuICogQHBhcmFtIHtOdW1iZXJ9IFtsb2FuUmF0ZSA9IDAuMDQ5XSAtIOi0t+asvuW5tOWIqeeOh1xuICogQHBhcmFtIHtOdW1iZXJ9IFttb250aHMgPSAxMiAqIDMwLF0gLSDov5jotLfml7bpl7TvvIjmnIjvvIlcbiAqIEBwYXJhbSB7TnVtYmVyfSBbY2FzaCA9IDEwMF0gLSDnjrDph5Hph4/vvIjkuIfvvIlcbiAqIEBwYXJhbSB7TnVtYmVyfSBbY2FzaFJhdGUgPSAwLjA0XSAtIOeOsOmHkeW5tOaKlei1hOWbnuaKpeeOh1xuICogQHBhcmFtIHtOdW1iZXJ9IFtyZW50ID0gMC40XSAtIOenn+aIv+enn+mHke+8iOS4h++8iVxuICogQHBhcmFtIHtOdW1iZXJ9IFtyZW50UmF0ZSA9IDAuMV0gLSDnp5/miL/np5/ph5HlubTmtqjluYXnjodcbiAqIEBwYXJhbSB7TnVtYmVyfSBbaW5mbGF0aW9uUmF0ZSA9IDAuMDVdIC0g5bm06YCa6LSn6Iao6IOA546HXG4gKi9cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKHtcbiAgbG9hbiA9IDMwMCxcbiAgbG9hblJhdGUgPSAwLjA0OSxcbiAgbW9udGhzID0gMTIgKiAzMCxcbiAgY2FzaCA9IDEwMCxcbiAgY2FzaFJhdGUgPSAwLjA0LFxuICByZW50ID0gMC40LFxuICByZW50UmF0ZSA9IDAuMSxcbiAgaW5mbGF0aW9uUmF0ZSA9IDAuMDVcbn0gPSB7fSkge1xuICAvLyDkubDmiL/nmoTku7fmoLxcbiAgY29uc3QgaG91c2VQcmljZSA9IGNhc2ggKyBsb2FuO1xuXG4gIC8vIOenn+aIv+eahOeOsOmHkVxuICBsb2FuUmF0ZSA9IGxvYW5SYXRlIC8gMTI7IC8vIOi0t+asvuaciOWIqeeOh1xuICBjYXNoUmF0ZSA9IGNhc2hSYXRlIC8gMTI7IC8vIOeOsOmHkeaciOaKlei1hOWbnuaKpeeOh1xuICByZW50UmF0ZSA9IHJlbnRSYXRlIC8gMTI7IC8vIOenn+aIv+enn+mHkeaciOa2qOW5heeOh1xuICBjb25zdCBsb2FuUGF5ID0gdG9vbHMuZnVuY0EoeyBsb2FuLCBsb2FuUmF0ZSwgbW9udGhzIH0pOyAgLy8g562J6aKd5pys5oGv77yM5q+P5pyI6L+Y5qy+5pWw6aKdXG4gIGZvciAobGV0IG1vbnRoID0gMDsgbW9udGggPCBtb250aHM7IG1vbnRoICs9IDEpIHsgIC8vIOacquS5sOaIv+iOt+W+l+eahOeOsOmHkeaUtuebilxuICAgIGNhc2ggPSAoY2FzaCArIGxvYW5QYXkgLSByZW50ICogKDEgKyByZW50UmF0ZSkpICogKDEgKyBjYXNoUmF0ZSk7XG4gIH1cbiAgY2FzaCA9IGNhc2gudG9GaXhlZCgyKTtcblxuICAvLyDpgJrotKfohqjog4DlkozotK3kubDliptcbiAgY29uc3QgaW5mbGF0aW9uID0gTWF0aC5wb3coMSArIGluZmxhdGlvblJhdGUsIG1vbnRocyAvIDEyKS50b0ZpeGVkKDIpOyAgLy8g6L+Y5a6M5qy+5LmL5ZCO55qE6YCa6LSn6Iao6IOA5YCN5pWwXG4gIGNvbnN0IHBvd2VyID0gKGNhc2ggLyBpbmZsYXRpb24pLnRvRml4ZWQoMik7ICAvLyDotK3kubDliptcblxuICByZXR1cm4ge1xuICAgIGhvdXNlUHJpY2UsXG4gICAgY2FzaCxcbiAgICBpbmZsYXRpb24sXG4gICAgcG93ZXIsXG4gICAgbXNnOiBgJHsobW9udGhzIC8gMTIpLnRvRml4ZWQoKX3lubTlkI7vvJo8YnI+5Lmw5oi/6ICF6I635b6X5b2T5bm05oC75Lu3XCIke2hvdXNlUHJpY2V95LiHXCLnmoTkuIDlpZfmiL/lrZDvvJvnp5/miL/ogIXojrflvpdcIiR7Y2FzaH3kuIdcIueOsOmHke+8iOi0reS5sOWKm+ebuOW9k+S6juW9k+W5tOeahFwiJHtwb3dlcn3kuIdcIu+8ie+8mzxicj7lvZPlubTkubDnmoTmiL/lrZDpnIDopoHmtqjoh7NcIiR7KGNhc2ggLyBob3VzZVByaWNlKS50b0ZpeGVkKDIpfeWAjVwi5oyB5bmz56ef5oi/6ICF546w6YeR5rWB77ybPGJyPueUseS6jumAmui0p+iGqOiDgO+8jOeJqeS7t+W3sue7j+aYr+WOn+adpeeahFwiJHtpbmZsYXRpb2595YCNXCLjgIJgXG4gIH07XG59O1xuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vc3JjL2luZGV4LmpzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///0\n')}]);
var buyvsrent=function(n){function F(B){if(Q[B])return Q[B].exports;var U=Q[B]={i:B,l:!1,exports:{}};return n[B].call(U.exports,U,U.exports,F),U.l=!0,U.exports}var Q={};return F.m=n,F.c=Q,F.d=function(n,Q,B){F.o(n,Q)||Object.defineProperty(n,Q,{configurable:!1,enumerable:!0,get:B})},F.n=function(n){var Q=n&&n.__esModule?function(){return n.default}:function(){return n};return F.d(Q,"a",Q),Q},F.o=function(n,F){return Object.prototype.hasOwnProperty.call(n,F)},F.p="",F(F.s=0)}([function(module,exports,__webpack_require__){"use strict";eval('\n\nvar tools = {\n /**\n * 等额本息,每月还款数额\n * @param {Number} loan - 贷款量\n * @param {Number} loanRate - 贷款月利率\n * @param {Number} months - 还贷时间\n * @returns {Number} 每月还款数额\n */\n funcA: function funcA(_ref) {\n var loan = _ref.loan,\n loanRate = _ref.loanRate,\n months = _ref.months;\n\n // 月还款额 = 本金 * 月利率 * Math.pow(1 + 月利率, 还款总月数) / (Math.pow(1 + 月利率, 还款总月数) - 1)\n return loan * loanRate * Math.pow(1 + loanRate, months) / (Math.pow(1 + loanRate, months) - 1);\n },\n\n\n /**\n * 等额本金,每月还款数额的数组\n * @param {Number} loan - 贷款量\n * @param {Number} loanRate - 贷款月利率\n * @param {Number} months - 还贷时间\n * @returns {Array} 每月还款数额的数组\n */\n funcB: function funcB(_ref2) {\n var loan = _ref2.loan,\n loanRate = _ref2.loanRate,\n months = _ref2.months;\n\n var returnArr = [];\n var capital = loan / months; // 每月还的本金\n\n for (var month = 0; month < months; month += 1) {\n // 月还款额 = 本金 / 还款总月数 + 剩余本金 * 月利率\n returnArr.push(capital + (loan - capital * month) * loanRate);\n }\n\n return returnArr;\n }\n};\n\n/**\n * 方法描述(月)\n * @param {Number} [loan = 300] - 贷款量(万)\n * @param {Number} [loanRate = 0.049] - 贷款年利率\n * @param {Number} [months = 12 * 30,] - 还贷时间(月)\n * @param {Number} [cash = 100] - 现金量(万)\n * @param {Number} [cashRate = 0.04] - 现金年投资回报率\n * @param {Number} [rent = 0.4] - 租房租金(万)\n * @param {Number} [rentRate = 0.1] - 租房租金年涨幅率\n * @param {Number} [inflationRate = 0.05] - 年通货膨胀率\n */\nmodule.exports = function () {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref3$loan = _ref3.loan,\n loan = _ref3$loan === undefined ? 300 : _ref3$loan,\n _ref3$loanRate = _ref3.loanRate,\n loanRate = _ref3$loanRate === undefined ? 0.049 : _ref3$loanRate,\n _ref3$months = _ref3.months,\n months = _ref3$months === undefined ? 12 * 30 : _ref3$months,\n _ref3$cash = _ref3.cash,\n cash = _ref3$cash === undefined ? 100 : _ref3$cash,\n _ref3$cashRate = _ref3.cashRate,\n cashRate = _ref3$cashRate === undefined ? 0.04 : _ref3$cashRate,\n _ref3$rent = _ref3.rent,\n rent = _ref3$rent === undefined ? 0.4 : _ref3$rent,\n _ref3$rentRate = _ref3.rentRate,\n rentRate = _ref3$rentRate === undefined ? 0.1 : _ref3$rentRate,\n _ref3$inflationRate = _ref3.inflationRate,\n inflationRate = _ref3$inflationRate === undefined ? 0.05 : _ref3$inflationRate;\n\n // 买房的价格\n var housePrice = cash + loan;\n\n // 租房的现金\n loanRate = loanRate / 12; // 贷款月利率\n cashRate = cashRate / 12; // 现金月投资回报率\n rentRate = rentRate / 12; // 租房租金月涨幅率\n var loanPay = tools.funcA({ loan: loan, loanRate: loanRate, months: months }); // 等额本息,每月还款数额\n for (var month = 0; month < months; month += 1) {\n // 未买房获得的现金收益\n cash = (cash + loanPay - rent * (1 + rentRate)) * (1 + cashRate);\n }\n cash = cash.toFixed(2);\n\n // 通货膨胀和购买力\n var inflation = Math.pow(1 + inflationRate, months / 12).toFixed(2); // 还完款之后的通货膨胀倍数\n var power = (cash / inflation).toFixed(2); // 购买力\n\n return {\n housePrice: housePrice,\n cash: cash,\n inflation: inflation,\n power: power,\n msg: (months / 12).toFixed() + "\\u5E74\\u540E\\uFF1A<br>\\u4E70\\u623F\\u8005\\u83B7\\u5F97\\u5F53\\u5E74\\u603B\\u4EF7\\"" + housePrice + "\\u4E07\\"\\u7684\\u4E00\\u5957\\u623F\\u5B50\\uFF1B\\u79DF\\u623F\\u8005\\u83B7\\u5F97\\"" + cash + "\\u4E07\\"\\u73B0\\u91D1\\uFF08\\u8D2D\\u4E70\\u529B\\u76F8\\u5F53\\u4E8E\\u5F53\\u5E74\\u7684\\"" + power + "\\u4E07\\"\\uFF09\\uFF1B<br>\\u5F53\\u5E74\\u4E70\\u7684\\u623F\\u5B50\\u9700\\u8981\\u6DA8\\u81F3\\"" + (cash / housePrice).toFixed(2) + "\\u500D\\"\\u6301\\u5E73\\u79DF\\u623F\\u8005\\u73B0\\u91D1\\u6D41\\uFF1B<br>\\u7531\\u4E8E\\u901A\\u8D27\\u81A8\\u80C0\\uFF0C\\u7269\\u4EF7\\u5DF2\\u7ECF\\u662F\\u539F\\u6765\\u7684\\"" + inflation + "\\u500D\\"\\u3002"\n };\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvaW5kZXguanM/OTU1MiJdLCJuYW1lcyI6WyJ0b29scyIsImZ1bmNBIiwibG9hbiIsImxvYW5SYXRlIiwibW9udGhzIiwiTWF0aCIsInBvdyIsImZ1bmNCIiwicmV0dXJuQXJyIiwiY2FwaXRhbCIsIm1vbnRoIiwicHVzaCIsIm1vZHVsZSIsImV4cG9ydHMiLCJjYXNoIiwiY2FzaFJhdGUiLCJyZW50IiwicmVudFJhdGUiLCJpbmZsYXRpb25SYXRlIiwiaG91c2VQcmljZSIsImxvYW5QYXkiLCJ0b0ZpeGVkIiwiaW5mbGF0aW9uIiwicG93ZXIiLCJtc2ciXSwibWFwcGluZ3MiOiI7O0FBQUEsSUFBTUEsUUFBUTtBQUNaOzs7Ozs7O0FBT0FDLE9BUlksdUJBUXVCO0FBQUEsUUFBMUJDLElBQTBCLFFBQTFCQSxJQUEwQjtBQUFBLFFBQXBCQyxRQUFvQixRQUFwQkEsUUFBb0I7QUFBQSxRQUFWQyxNQUFVLFFBQVZBLE1BQVU7O0FBQ2pDO0FBQ0EsV0FBT0YsT0FBT0MsUUFBUCxHQUFrQkUsS0FBS0MsR0FBTCxDQUFTLElBQUlILFFBQWIsRUFBdUJDLE1BQXZCLENBQWxCLElBQW9EQyxLQUFLQyxHQUFMLENBQVMsSUFBSUgsUUFBYixFQUF1QkMsTUFBdkIsSUFBaUMsQ0FBckYsQ0FBUDtBQUNELEdBWFc7OztBQWFaOzs7Ozs7O0FBT0FHLE9BcEJZLHdCQW9CdUI7QUFBQSxRQUExQkwsSUFBMEIsU0FBMUJBLElBQTBCO0FBQUEsUUFBcEJDLFFBQW9CLFNBQXBCQSxRQUFvQjtBQUFBLFFBQVZDLE1BQVUsU0FBVkEsTUFBVTs7QUFDakMsUUFBTUksWUFBWSxFQUFsQjtBQUNBLFFBQU1DLFVBQVVQLE9BQU9FLE1BQXZCLENBRmlDLENBRUY7O0FBRS9CLFNBQUssSUFBSU0sUUFBUSxDQUFqQixFQUFvQkEsUUFBUU4sTUFBNUIsRUFBb0NNLFNBQVMsQ0FBN0MsRUFBZ0Q7QUFDOUM7QUFDQUYsZ0JBQVVHLElBQVYsQ0FBZUYsVUFBVSxDQUFDUCxPQUFPTyxVQUFVQyxLQUFsQixJQUEyQlAsUUFBcEQ7QUFDRDs7QUFFRCxXQUFPSyxTQUFQO0FBQ0Q7QUE5QlcsQ0FBZDs7QUFrQ0E7Ozs7Ozs7Ozs7O0FBV0FJLE9BQU9DLE9BQVAsR0FBaUIsWUFTVDtBQUFBLGtGQUFKLEVBQUk7QUFBQSx5QkFSTlgsSUFRTTtBQUFBLE1BUk5BLElBUU0sOEJBUkMsR0FRRDtBQUFBLDZCQVBOQyxRQU9NO0FBQUEsTUFQTkEsUUFPTSxrQ0FQSyxLQU9MO0FBQUEsMkJBTk5DLE1BTU07QUFBQSxNQU5OQSxNQU1NLGdDQU5HLEtBQUssRUFNUjtBQUFBLHlCQUxOVSxJQUtNO0FBQUEsTUFMTkEsSUFLTSw4QkFMQyxHQUtEO0FBQUEsNkJBSk5DLFFBSU07QUFBQSxNQUpOQSxRQUlNLGtDQUpLLElBSUw7QUFBQSx5QkFITkMsSUFHTTtBQUFBLE1BSE5BLElBR00sOEJBSEMsR0FHRDtBQUFBLDZCQUZOQyxRQUVNO0FBQUEsTUFGTkEsUUFFTSxrQ0FGSyxHQUVMO0FBQUEsa0NBRE5DLGFBQ007QUFBQSxNQUROQSxhQUNNLHVDQURVLElBQ1Y7O0FBQ047QUFDQSxNQUFNQyxhQUFhTCxPQUFPWixJQUExQjs7QUFFQTtBQUNBQyxhQUFXQSxXQUFXLEVBQXRCLENBTE0sQ0FLbUI7QUFDekJZLGFBQVdBLFdBQVcsRUFBdEIsQ0FOTSxDQU1tQjtBQUN6QkUsYUFBV0EsV0FBVyxFQUF0QixDQVBNLENBT21CO0FBQ3pCLE1BQU1HLFVBQVVwQixNQUFNQyxLQUFOLENBQVksRUFBRUMsVUFBRixFQUFRQyxrQkFBUixFQUFrQkMsY0FBbEIsRUFBWixDQUFoQixDQVJNLENBUW1EO0FBQ3pELE9BQUssSUFBSU0sUUFBUSxDQUFqQixFQUFvQkEsUUFBUU4sTUFBNUIsRUFBb0NNLFNBQVMsQ0FBN0MsRUFBZ0Q7QUFBRztBQUNqREksV0FBTyxDQUFDQSxPQUFPTSxPQUFQLEdBQWlCSixRQUFRLElBQUlDLFFBQVosQ0FBbEIsS0FBNEMsSUFBSUYsUUFBaEQsQ0FBUDtBQUNEO0FBQ0RELFNBQU9BLEtBQUtPLE9BQUwsQ0FBYSxDQUFiLENBQVA7O0FBRUE7QUFDQSxNQUFNQyxZQUFZakIsS0FBS0MsR0FBTCxDQUFTLElBQUlZLGFBQWIsRUFBNEJkLFNBQVMsRUFBckMsRUFBeUNpQixPQUF6QyxDQUFpRCxDQUFqRCxDQUFsQixDQWZNLENBZWlFO0FBQ3ZFLE1BQU1FLFFBQVEsQ0FBQ1QsT0FBT1EsU0FBUixFQUFtQkQsT0FBbkIsQ0FBMkIsQ0FBM0IsQ0FBZCxDQWhCTSxDQWdCdUM7O0FBRTdDLFNBQU87QUFDTEYsMEJBREs7QUFFTEwsY0FGSztBQUdMUSx3QkFISztBQUlMQyxnQkFKSztBQUtMQyxTQUFRLENBQUNwQixTQUFTLEVBQVYsRUFBY2lCLE9BQWQsRUFBUixzRkFBbURGLFVBQW5ELG9GQUE4RUwsSUFBOUUsMEZBQW9HUyxLQUFwRyw4RkFBK0gsQ0FBQ1QsT0FBT0ssVUFBUixFQUFvQkUsT0FBcEIsQ0FBNEIsQ0FBNUIsQ0FBL0gsc0tBQStMQyxTQUEvTDtBQUxLLEdBQVA7QUFPRCxDQWxDRCIsImZpbGUiOiIwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgdG9vbHMgPSB7XG4gIC8qKlxuICAgKiDnrYnpop3mnKzmga/vvIzmr4/mnIjov5jmrL7mlbDpop1cbiAgICogQHBhcmFtIHtOdW1iZXJ9IGxvYW4gLSDotLfmrL7ph49cbiAgICogQHBhcmFtIHtOdW1iZXJ9IGxvYW5SYXRlIC0g6LS35qy+5pyI5Yip546HXG4gICAqIEBwYXJhbSB7TnVtYmVyfSBtb250aHMgLSDov5jotLfml7bpl7RcbiAgICogQHJldHVybnMge051bWJlcn0g5q+P5pyI6L+Y5qy+5pWw6aKdXG4gICAqL1xuICBmdW5jQSAoeyBsb2FuLCBsb2FuUmF0ZSwgbW9udGhzIH0pIHtcbiAgICAvLyDmnIjov5jmrL7pop0gPSDmnKzph5EgKiDmnIjliKnnjocgKiBNYXRoLnBvdygxICsg5pyI5Yip546HLCDov5jmrL7mgLvmnIjmlbApIC8gKE1hdGgucG93KDEgKyDmnIjliKnnjocsIOi/mOasvuaAu+aciOaVsCkgLSAxKVxuICAgIHJldHVybiBsb2FuICogbG9hblJhdGUgKiBNYXRoLnBvdygxICsgbG9hblJhdGUsIG1vbnRocykgLyAoTWF0aC5wb3coMSArIGxvYW5SYXRlLCBtb250aHMpIC0gMSlcbiAgfSxcblxuICAvKipcbiAgICog562J6aKd5pys6YeR77yM5q+P5pyI6L+Y5qy+5pWw6aKd55qE5pWw57uEXG4gICAqIEBwYXJhbSB7TnVtYmVyfSBsb2FuIC0g6LS35qy+6YePXG4gICAqIEBwYXJhbSB7TnVtYmVyfSBsb2FuUmF0ZSAtIOi0t+asvuaciOWIqeeOh1xuICAgKiBAcGFyYW0ge051bWJlcn0gbW9udGhzIC0g6L+Y6LS35pe26Ze0XG4gICAqIEByZXR1cm5zIHtBcnJheX0g5q+P5pyI6L+Y5qy+5pWw6aKd55qE5pWw57uEXG4gICAqL1xuICBmdW5jQiAoeyBsb2FuLCBsb2FuUmF0ZSwgbW9udGhzIH0pIHtcbiAgICBjb25zdCByZXR1cm5BcnIgPSBbXVxuICAgIGNvbnN0IGNhcGl0YWwgPSBsb2FuIC8gbW9udGhzICAvLyDmr4/mnIjov5jnmoTmnKzph5FcblxuICAgIGZvciAobGV0IG1vbnRoID0gMDsgbW9udGggPCBtb250aHM7IG1vbnRoICs9IDEpIHtcbiAgICAgIC8vIOaciOi/mOasvuminSA9IOacrOmHkSAvIOi/mOasvuaAu+aciOaVsCArIOWJqeS9meacrOmHkSAqIOaciOWIqeeOh1xuICAgICAgcmV0dXJuQXJyLnB1c2goY2FwaXRhbCArIChsb2FuIC0gY2FwaXRhbCAqIG1vbnRoKSAqIGxvYW5SYXRlKVxuICAgIH1cblxuICAgIHJldHVybiByZXR1cm5BcnJcbiAgfVxuXG59XG5cbi8qKlxuICog5pa55rOV5o+P6L+w77yI5pyI77yJXG4gKiBAcGFyYW0ge051bWJlcn0gW2xvYW4gPSAzMDBdIC0g6LS35qy+6YeP77yI5LiH77yJXG4gKiBAcGFyYW0ge051bWJlcn0gW2xvYW5SYXRlID0gMC4wNDldIC0g6LS35qy+5bm05Yip546HXG4gKiBAcGFyYW0ge051bWJlcn0gW21vbnRocyA9IDEyICogMzAsXSAtIOi/mOi0t+aXtumXtO+8iOaciO+8iVxuICogQHBhcmFtIHtOdW1iZXJ9IFtjYXNoID0gMTAwXSAtIOeOsOmHkemHj++8iOS4h++8iVxuICogQHBhcmFtIHtOdW1iZXJ9IFtjYXNoUmF0ZSA9IDAuMDRdIC0g546w6YeR5bm05oqV6LWE5Zue5oql546HXG4gKiBAcGFyYW0ge051bWJlcn0gW3JlbnQgPSAwLjRdIC0g56ef5oi/56ef6YeR77yI5LiH77yJXG4gKiBAcGFyYW0ge051bWJlcn0gW3JlbnRSYXRlID0gMC4xXSAtIOenn+aIv+enn+mHkeW5tOa2qOW5heeOh1xuICogQHBhcmFtIHtOdW1iZXJ9IFtpbmZsYXRpb25SYXRlID0gMC4wNV0gLSDlubTpgJrotKfohqjog4DnjodcbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoe1xuICBsb2FuID0gMzAwLFxuICBsb2FuUmF0ZSA9IDAuMDQ5LFxuICBtb250aHMgPSAxMiAqIDMwLFxuICBjYXNoID0gMTAwLFxuICBjYXNoUmF0ZSA9IDAuMDQsXG4gIHJlbnQgPSAwLjQsXG4gIHJlbnRSYXRlID0gMC4xLFxuICBpbmZsYXRpb25SYXRlID0gMC4wNVxufSA9IHt9KSB7XG4gIC8vIOS5sOaIv+eahOS7t+agvFxuICBjb25zdCBob3VzZVByaWNlID0gY2FzaCArIGxvYW5cblxuICAvLyDnp5/miL/nmoTnjrDph5FcbiAgbG9hblJhdGUgPSBsb2FuUmF0ZSAvIDEyIC8vIOi0t+asvuaciOWIqeeOh1xuICBjYXNoUmF0ZSA9IGNhc2hSYXRlIC8gMTIgLy8g546w6YeR5pyI5oqV6LWE5Zue5oql546HXG4gIHJlbnRSYXRlID0gcmVudFJhdGUgLyAxMiAvLyDnp5/miL/np5/ph5HmnIjmtqjluYXnjodcbiAgY29uc3QgbG9hblBheSA9IHRvb2xzLmZ1bmNBKHsgbG9hbiwgbG9hblJhdGUsIG1vbnRocyB9KSAgLy8g562J6aKd5pys5oGv77yM5q+P5pyI6L+Y5qy+5pWw6aKdXG4gIGZvciAobGV0IG1vbnRoID0gMDsgbW9udGggPCBtb250aHM7IG1vbnRoICs9IDEpIHsgIC8vIOacquS5sOaIv+iOt+W+l+eahOeOsOmHkeaUtuebilxuICAgIGNhc2ggPSAoY2FzaCArIGxvYW5QYXkgLSByZW50ICogKDEgKyByZW50UmF0ZSkpICogKDEgKyBjYXNoUmF0ZSlcbiAgfVxuICBjYXNoID0gY2FzaC50b0ZpeGVkKDIpXG5cbiAgLy8g6YCa6LSn6Iao6IOA5ZKM6LSt5Lmw5YqbXG4gIGNvbnN0IGluZmxhdGlvbiA9IE1hdGgucG93KDEgKyBpbmZsYXRpb25SYXRlLCBtb250aHMgLyAxMikudG9GaXhlZCgyKSAgLy8g6L+Y5a6M5qy+5LmL5ZCO55qE6YCa6LSn6Iao6IOA5YCN5pWwXG4gIGNvbnN0IHBvd2VyID0gKGNhc2ggLyBpbmZsYXRpb24pLnRvRml4ZWQoMikgIC8vIOi0reS5sOWKm1xuXG4gIHJldHVybiB7XG4gICAgaG91c2VQcmljZSxcbiAgICBjYXNoLFxuICAgIGluZmxhdGlvbixcbiAgICBwb3dlcixcbiAgICBtc2c6IGAkeyhtb250aHMgLyAxMikudG9GaXhlZCgpfeW5tOWQju+8mjxicj7kubDmiL/ogIXojrflvpflvZPlubTmgLvku7dcIiR7aG91c2VQcmljZX3kuIdcIueahOS4gOWll+aIv+WtkO+8m+enn+aIv+iAheiOt+W+l1wiJHtjYXNofeS4h1wi546w6YeR77yI6LSt5Lmw5Yqb55u45b2T5LqO5b2T5bm055qEXCIke3Bvd2VyfeS4h1wi77yJ77ybPGJyPuW9k+W5tOS5sOeahOaIv+WtkOmcgOimgea2qOiHs1wiJHsoY2FzaCAvIGhvdXNlUHJpY2UpLnRvRml4ZWQoMil95YCNXCLmjIHlubPnp5/miL/ogIXnjrDph5HmtYHvvJs8YnI+55Sx5LqO6YCa6LSn6Iao6IOA77yM54mp5Lu35bey57uP5piv5Y6f5p2l55qEXCIke2luZmxhdGlvbn3lgI1cIuOAgmBcbiAgfVxufVxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vc3JjL2luZGV4LmpzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///0\n')}]);

@@ -1,1 +0,1 @@

module.exports = require('./source/index');
module.exports = require('./source/index')

@@ -16,3 +16,3 @@ {

"main": "index.js",
"version": "1.0.3"
"version": "1.0.4"
}

@@ -0,0 +0,0 @@ # buy-vs-rent

@@ -9,5 +9,5 @@ const tools = {

*/
funcA({ loan, loanRate, months }) {
funcA ({ loan, loanRate, months }) {
// 月还款额 = 本金 * 月利率 * Math.pow(1 + 月利率, 还款总月数) / (Math.pow(1 + 月利率, 还款总月数) - 1)
return loan * loanRate * Math.pow(1 + loanRate, months) / (Math.pow(1 + loanRate, months) - 1);
return loan * loanRate * Math.pow(1 + loanRate, months) / (Math.pow(1 + loanRate, months) - 1)
},

@@ -22,15 +22,15 @@

*/
funcB({ loan, loanRate, months }) {
const returnArr = [];
const capital = loan / months; // 每月还的本金
funcB ({ loan, loanRate, months }) {
const returnArr = []
const capital = loan / months // 每月还的本金
for (let month = 0; month < months; month += 1) {
// 月还款额 = 本金 / 还款总月数 + 剩余本金 * 月利率
returnArr.push(capital + (loan - capital * month) * loanRate);
returnArr.push(capital + (loan - capital * month) * loanRate)
}
return returnArr;
return returnArr
}
};
}

@@ -59,17 +59,17 @@ /**

// 买房的价格
const housePrice = cash + loan;
const housePrice = cash + loan
// 租房的现金
loanRate = loanRate / 12; // 贷款月利率
cashRate = cashRate / 12; // 现金月投资回报率
rentRate = rentRate / 12; // 租房租金月涨幅率
const loanPay = tools.funcA({ loan, loanRate, months }); // 等额本息,每月还款数额
loanRate = loanRate / 12 // 贷款月利率
cashRate = cashRate / 12 // 现金月投资回报率
rentRate = rentRate / 12 // 租房租金月涨幅率
const loanPay = tools.funcA({ loan, loanRate, months }) // 等额本息,每月还款数额
for (let month = 0; month < months; month += 1) { // 未买房获得的现金收益
cash = (cash + loanPay - rent * (1 + rentRate)) * (1 + cashRate);
cash = (cash + loanPay - rent * (1 + rentRate)) * (1 + cashRate)
}
cash = cash.toFixed(2);
cash = cash.toFixed(2)
// 通货膨胀和购买力
const inflation = Math.pow(1 + inflationRate, months / 12).toFixed(2); // 还完款之后的通货膨胀倍数
const power = (cash / inflation).toFixed(2); // 购买力
const inflation = Math.pow(1 + inflationRate, months / 12).toFixed(2) // 还完款之后的通货膨胀倍数
const power = (cash / inflation).toFixed(2) // 购买力

@@ -82,3 +82,3 @@ return {

msg: `${(months / 12).toFixed()}年后:<br>买房者获得当年总价"${housePrice}万"的一套房子;租房者获得"${cash}万"现金(购买力相当于当年的"${power}万");<br>当年买的房子需要涨至"${(cash / housePrice).toFixed(2)}倍"持平租房者现金流;<br>由于通货膨胀,物价已经是原来的"${inflation}倍"。`
};
};
}
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc