我有一个carousel文件,我想在其中获取index.js和构建block.build.js,所以我webpack.config.js的:
var config = {
entry: './index.js',
output: {
path: __dirname,
filename: 'block.build.js',
},
devServer: {
contentBase: './Carousel'
},
module : {
rules : [
{
test: /.js$/,
loader: 'babel-loader',
exclude: /node_modules/,
query: {
presets: ['react', 'es2015'],
plugins: ['transform-class-properties']
}
}
]
}
};
module.exports = config;
Run Code Online (Sandbox Code Playgroud)
在package.json下面,我用的是:
{
"name": "carousel",
"version": "1.0.0",
"description": "",
"main": "webpack.config.js",
"dependencies": {
"@babel/core": "^7.0.0-beta.40",
"babel-cli": "^6.26.0",
"babel-loader": "^8.0.0-beta.0",
"babel-plugin-lodash": "^3.3.2",
"babel-plugin-react-transform": "^3.0.0",
"babel-preset-react": "^6.24.1",
"cross-env": …Run Code Online (Sandbox Code Playgroud) 我一直在读一本书《编写出色的代码-理解机器》。在关于取整的部分中,它说:
如果小数位的值大于或等于可表示的总十进制值的一半,则数字应四舍五入为最小的较大数字。
意思是:
round(1.5) // equals 2
round(1.49) // equals 1
Run Code Online (Sandbox Code Playgroud)
但是当我尝试使用Python时:
x1 = 1.4999 # rounds to 1
x2 = 1.4999999999999999 # rounds to 2
print(round(x1))
print(round(x2))
Run Code Online (Sandbox Code Playgroud)
输出为:
1个
2
我用C#和Swift尝试了同样的事情,并且给出了相同的输出。因此,我认为这是一个与语言无关的话题。
但是为什么会这样呢?
我的假设是浮点单元将多余的位四舍五入,从而在应用程序员的舍入之前将“ 1.49999999999999999999999”转换为“ 1.5”。